vue 实现tab切换动态加载不同的组件
vue 实现tab切换动态加载不同的组件
使用vue中的is特性来加载不同的组件。具体看如下代码;这个功能对于vue比较复杂的页面可以使用上,可以把一个页面的功能拆分出来,使代码更简单。使用方式具体看如下代码:
主页面代码如下,分别导入了child1.vue, child2.vue, child3.vue 3个小模块,当点击页面某一项的时候去加载不同的组件。
<style> </style>
<template>
<div>
<h2>vue 动态组件实现tab切换加载不同的小模块</h2>
<div>
<a href="javascript:void(0)" @click="tabChange(child1)">第一项</a>
<a href="javascript:void(0)" @click="tabChange(child2)">第二项</a>
<a href="javascript:void(0)" @click="tabChange(child3)">第三项</a>
</div>
<!--
动态地绑定到它的 is 特性,我们让多个组件可以使用同一个挂载点,并动态切换。
-->
<div :is="currentView"></div>
</div>
</template> <script>
// 导入子组件
import child1 from '@/components/child1';
import child2 from '@/components/child2';
import child3 from '@/components/child3'; export default {
data () {
return {
child1: 'child1',
child2: 'child2',
child3: 'child3',
currentView: 'child1' // 默认选中第一项
};
},
methods: {
tabChange(tabItem) {
this.currentView = tabItem;
}
},
components: {
child1,
child2,
child3
}
};
</script>
子组件child1.vue代码如下:
<style> </style> <template>
<div>我是第一个子组件</div>
</template> <script>
export default {
data() {
return {
}
}
}
</script>
子组件child2.vue代码如下:
<style> </style> <template>
<div>我是第二个子组件</div>
</template> <script>
export default {
data() {
return {
}
}
}
</script>
子组件child3.vue 代码如下:
<style> </style> <template>
<div>我是第三个子组件</div>
</template> <script>
export default {
data() {
return {
}
}
}
</script>
vue 实现tab切换动态加载不同的组件的更多相关文章
- Vue – 基础学习(5):动态加载和注册组件
// var myComponent =() => import(`./../../components/custom_panel/${t_url}.vue`);// //var myCompo ...
- Vue Router根据后台数据加载不同的组件(思考->实现->不止于实现)
实际项目中遇到的需求 同一个链接需要加载不同的页面组件.根据用户所购买服务的不同,有不同的页面展现. 有一些不好的实现方式 直接把这几个组件写在同一个组件下,通过v-if去判断.如果这么做的话,甚至可 ...
- vue问题八:动态加载loading、浏览器图标
全局动态加载loading: 参考文档:https://blog.csdn.net/qq_34825875/article/details/79570301 在main.js或者index.js引用 ...
- WPF 界面实现多语言支持 中英文切换 动态加载资源字典
1.使用资源字典,首先新建两个字典文件en-us.xaml.zh-cn.xaml.定义中英文的字符串在这里面[注意:添加xmlns:s="clr-namespace:System;assem ...
- Ext选项卡tabpanel切换动态加载数据
鸣人不说暗话,来张图: 代码开始:(使用Ext,ajax加载数据,如果你们有好的方法也可以多多交流)var tabxsk = new Object(); //初始化 tabxsk.init = fun ...
- vue动态加载不同的组件(分内部和外部组件)
<!DOCTYPE html> <html> <head> <title> hello world vue </title> <met ...
- Vue完成页面切换中加载数据
created() { // 拿到路由传递来的car主键 let pk = this.$route.query.pk || this.$route.params.pk; // 主键不存在,就直接结束方 ...
- Ext JS学习第十天 Ext基础之动态加载JS文件(补充)
此文用来记录学习笔记: •Ext4.x版本提供的一大亮点就是Ext.Loader这个类的动态加载机制!只要遵循路径规范,即可动态加载js文件,方便把自己扩展组件动态加载进来,并且减轻浏览器的压力. • ...
- Adroid动态加载Apk-插件化技术框架(动态代理方案)
技术:Android + java +动态加载+插件化 概述 为什么要使用插件化?在开发中,一个项目只会越做越大.初始版本可能是单一功能,后续可能加上各种风马牛不相及的功能.所以我认为插件化可以使 ...
随机推荐
- Spring容器的创建刷新过程
Spring容器的创建刷新过程 以AnnotionConfigApplicationContext为例,在new一个AnnotionConfigApplicationContext的时候,其构造函数内 ...
- Netty网络聊天(一) 聊天室实战
首发地址; Netty网络聊天(一) 聊天室实战 之前做过一个IM的项目,里面涉及了基本的聊天功能,所以注意这系列的文章不是练习,不含基础和逐步学习的部分,直接开始实战和思想引导,基础部分需要额外的去 ...
- Linux常用基本命令:三剑客命令之-awk 三元表达式
awk 3元表达式,if...else结构都可以用3元表达式改写 ghostwu@dev:~/linux/awk$ awk -v FS=":" '{ type=$3>=100 ...
- lfs(systemd版本)学习笔记-第1页
我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 一名linux爱好者,记录构建Linux From Scratch的过程 经博客园-骏马金龙前辈介绍,开始接触学习lfs,用博客 ...
- javascript arguments参数问题
function f(a, b, c){ alert(arguments.length); // result: "2" a = 100; alert(arguments[0]); ...
- 实践:配置keepalived实现主备热备份功能
图: 配置文件: 主服务器的配置如下: global_defs { router_id NodeA}vrrp_instance VI_1 { state MASTER #设置为主服务器 interfa ...
- Java:构造代码块,静态代码块
本文内容: 局部代码块 构造代码块 静态代码块 补充 首发日期:2018-03-28 局部代码块: 局部代码块用于限制变量的生命周期,如果希望某些变量在某一过程之后直接失效而不希望被后面继续操作时,可 ...
- mysqlclient and mysql-python安装出错方法
Collecting mysql-python Using cached https://files.pythonhosted.org/packages/a5/e9/51b544da85a36a68d ...
- Ubuntu + python pip遇到的问题
今天在做Flask跨源资源共享(CORS)的时候在安装flask-cors时遇到了两个问题. 首先我是在Ubuntu环境下安装的,整了好一会才弄得出来,现在整理一下. 安装flask-cors pip ...
- Vs .Net Framework 灵活配置
背景:我们开发和部署项目时都是通过注释某些配置项 比如: 在调试时就注释掉生产的配置项,在生产时又要改回来,只有一个还好,如果多的话就会非常容易出错. 问题1:在发布时容易出错,需要控制发布时根据配置 ...