Vue 动态组件

傷城~ 2023-06-18 03:54 99阅读 0赞

动态组件

通过使用保留的 元素,并对其 is 特性进行动态绑定,你可以在同一个挂载点动态切换多个组件:

  1. var vm = new Vue({
  2. el: '#example',
  3. data: {
  4. currentView: 'home'
  5. },
  6. components: {
  7. home: { /* ... */ },
  8. posts: { /* ... */ },
  9. archive: { /* ... */ }
  10. }
  11. })
  12. <component v-bind:is="currentView">
  13. <!-- 组件在 vm.currentview 变化时改变! -->
  14. </component>

也可以直接绑定到组件对象上:

  1. var Home = {
  2. template: '<p>Welcome home!</p>'
  3. }
  4. var vm = new Vue({
  5. el: '#example',
  6. data: {
  7. currentView: Home
  8. }
  9. })

keep-alive

如果把切换出去的组件保留在内存中,可以保留它的状态或避免重新渲染。

为此可以添加一个 keep-alive 指令参数:

  1. <keep-alive>
  2. <component :is="currentView">
  3. <!-- 非活动组件将被缓存! -->
  4. </component>
  5. </keep-alive>

发表评论

表情:
评论列表 (有 0 条评论,99人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Vue 动态组件

    动态组件 通过使用保留的 <component> 元素,并对其 is 特性进行动态绑定,你可以在同一个挂载点动态切换多个组件: var vm = new Vue

    相关 Vue动态组件

    Vue动态组件 1、序言 2、实例 1、序言   在页面应用程序中,经常会遇到多标签页面,在Vue.js中,可以通过动态组件来实现。组件的动态切换是通