前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >vue学习笔记之动态组件和v-once指令简单示例

vue学习笔记之动态组件和v-once指令简单示例

作者头像
砸漏
发布2020-11-05 15:27:12
3340
发布2020-11-05 15:27:12
举报
文章被收录于专栏:恩蓝脚本恩蓝脚本

本文实例讲述了vue动态组件和v-once指令。分享给大家供大家参考,具体如下:

点击按钮时,自动切换两个组件

<component :is="type" </component ,当点击按钮之后,会自动清除原来的组件,显示新的组件。

每一次切换,都需要销毁+创建

但是这样消耗有点大,所以我们在子组件中引用了v-once指令,这样可以将显示在页面中的组件存到内存中,不会完全销毁。

代码语言:javascript
复制
<!DOCTYPE html 
<html lang="en" 
<head 
  <meta charset="UTF-8" 
  <title 动态组件和v-once指令</title 
  <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js" </script 
</head 
<body 
<div id="app" 
  <component :is="type" </component 
<!--  <child-one v-if="type === 'child-one'" </child-one -- 
<!--  <child-two v-if="type === 'child-two'" </child-two -- 
  <button @click="handleBtnClick" change</button 
</div 
</body 
</html 
<script 
  Vue.component('child-one', {
    template: '<div v-once child-one</div '
  })
  Vue.component('child-two', {
    template: '<div v-once child-two</div '
  })
  var vm = new Vue({
    el: '#app',
    data: {
      type: 'child-one'
    },
    methods: {
      handleBtnClick: function () {
        this.type = (this.type === 'child-one' ? 'child-two' : 'child-one');
      }
    }
  })
</script 

运行结果:

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.zalou.cn/code/HtmlJsRun测试上述代码运行效果。

希望本文所述对大家vue.js程序设计有所帮助。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-09-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档