动态组件

2017-10-20  本文已影响0人  Julian1009

文档传送门:动态组件

简单来说就是在某一个挂载点下,可以绑定多个组件,实现动态切换。

文档中也提到“挂载点”这个词,这个“挂载点”就是<component><component>

<component v-bind:is="currentView">
 <!-- 组件在 vm.currentview 变化时改变! --> 
</component>
var vm = new Vue({
  el: '#example',
  data: {
    currentView: 'home'
  },
  components: {
    home: { /* ... */ },
    posts: { /* ... */ },
    archive: { /* ... */ }
  }
})

例子:https://jsfiddle.net/julianjia/hhuvsm4L/
文档中还有keep-alive的用法,是将挂载点上的组件存放在缓存中

<keep-alive>
  <component :is="currentView">
    <!-- 非活动组件将被缓存! -->
  </component>
</keep-alive>

还有更多用法请进文档传送门

Q1:加keep-alive和不加的区别?

Q2:之前看到过使用keep-alive的挂载点绑定太多组件,保存在缓存中导致浏览器容易卡死,怎么解决?

上一篇下一篇

猜你喜欢

热点阅读