vue知识点

160 阅读1分钟

vue

  1. vue为什么要求组件模板只能有一个根元素?

    (1) new Vue({el:’#app’})

    当我们实例化Vue的时候,填写一个el选项,来指定我们的SPA入口
     <body>
      <div id='app'></div>
     </body>
    
    
     <script>
      var vm = new Vue({
      	el:'#app'
      })
     </script>
     
     如果有两个div标签,Vue其实并不知道哪个才是我们的入口,因为对于一个入口来说,这个入口就是一个"Vue类",Vue需要把这个入口里面的所有东西拿来渲染,处理,最后再重新插入到dom中。如果同时设置了多个入口,那么vue就不知道哪一个才是这个‘类’。
    

    (2)单文件组件中,template下的元素div 其实就是"树"状数据结构,肯定要有个"根",一个遍历起始点

    template这个标签,这个标签是HTML5出来的新标签,它有三个特性:

    1.隐藏性:该标签不会显示在页面的任何地方,即便里边有多少内容,它永远都是隐藏的状态;
    2.任意性:该标签可以写在页面的任何地方,甚至是head、body、script标签内;
    3.无效性:该标签里的任何HTML内容都是无效的,不会起任何作用;
    
  2. 你了解vue的diff算法吗?

    https://www.cnblogs.com/wind-lanyan/p/9061684.html
    
    https://www.cnblogs.com/gaosirs/p/10619603.html
    
    https://juejin.cn/post/6844903592483094535
    
    https://www.jianshu.com/p/cd39cf4bb61d
    
  3. 其他的题:github.com/haizlin/fe-…