标签:UserName vue 进阶 UserInfo components 组件 激活 切换
动态组件
多个组件使用同一个挂载点,并动态进行切换,这就是动态组件
:is 可以切换挂载的组件
将导入的多个组件一起导入
<component :is="comName"></component>
<template>
<div>
<button @click="comName = 'UserName'">账号密码填写</button>
<button @click="comName = 'UserInfo'">个人信息填写</button>
<p>下面显示注册组件-动态切换:</p>
<div style="border: 1px solid red;">
<component :is="comName"></component>
</div>
</div>
</template>
<script>
import UserName from '../components/01/UserName'
import UserInfo from '../components/01/UserInfo'
export default {
data(){
return {
comName: "UserName"
}
},
components: {
UserName,
UserInfo
}
}
</script>
组件缓存
组件切换会导致组件被频繁销毁和重新创建,性能不高
<div style="border: 1px solid red;">
<!-- Vue内置keep-alive组件, 把包起来的组件缓存起来 -->
<keep-alive>
<component :is="comName"></component>
</keep-alive>
</div>
keep-alivek可以提高组件的性能,内部包裹的标签不会被销毁和重新创建,触发激活和非激活的生命周期方法
激活和非激活
被缓存的组件不再创建和销毁,而是激活和非激活
2个钩子方法名:
activated —激活触发
deactiveted —失去激活状态触发
。。。。。。。。。。。。。。。。。。
标签:UserName,vue,进阶,UserInfo,components,组件,激活,切换 来源: https://blog.csdn.net/zengxingX/article/details/120999189
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。