vue2.0使用动态组件实现tab切换效果(vue-cli)
<template> <div> <div>#动态组件实现tab切换效果#</div><br><br><br> <nav> <a href="javascript:void(0);" @click="toggleTabs(first);">{{first}}</a> <a href="javascript:void(0);" @click="toggleTabs(second);">{{second}}</a> <a href="javascript:void(0);" @click="toggleTabs(third);">{{third}}</a> </nav> //动态地绑定到它的 is 特性,我们让多个组件可以使用同一个挂载点,并动态切换。如果把切换出去的组件保留在内存中,可以保留它的状态或避免重新渲染。为此可以添加一个 keep-alive 指令参数 <first :is="currentView" keep-alive></first> </div> </template> <script type="text/ecmascript-6"> //导入子组件 import first from 'components/first'; import second from 'components/second'; import third from 'components/third'; export default { data () { return { first: "first", //导航栏文本1 second: "second", //导航栏文本2 third: "third", //导航栏文本3 currentView: 'first', //默认选中first子组件 }; }, components: { first, second, third }, methods: { toggleTabs (tabText) { this.currentView = tabText; } } } </script> //使用sass <style lang="scss"> nav{ width:600px; background:#eeeeee; padding:0 10px; & a{ text-decoration: none; color:#000; display: inline-block; width:150px; text-align:center; background:#aaaaaa; padding:10px; } } </style>
子组件
first.vue
<template> <div>我是第一个子组件</div> </template> <script type="text/ecmascript-6"> </script> <style lang="scss"></style>
second.vue
<template> <div>我是第二个子组件</div> </template> <script type="text/ecmascript-6"> </script> <style lang="scss"></style>
third.vue
<template> <div>我是第三个子组件</div> </template> <script type="text/ecmascript-6"> </script> <style lang="scss"></style>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异