vue component :is实现多个组件之间的切换(动画版)

下面展示一些 component :is

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.7.2/animate.min.css">
		<style>
			body{
				background-color: #DEE9FA;
			}
			.active{
				color: firebrick;
			}
		</style>
		<script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
		
	</head>
	<body>
		<div id="app">
			<div>
				<ul>
					<li :class="{active:showname=='one'}" @click="showname='one'">1</li>
					<li :class="{active:showname=='two'}" @click="showname='two'">2</li>
					<li :class="{active:showname=='three'}" @click="showname='three'">3</li>
				</ul>
			</div>
				<div>
					<transition 
					enter-active-class="animated fadeInDown" mode=" in-out">
						<component :is="showname"></component>
					</transition>
				</div>
		</div>
		<template id="one">
			<div>
				<div>one</div>
				<div>onething</div>
			</div>
		</template>
		<template id="two">
			<div>
				<div>two</div>
				<div>twothing</div>
			</div>
			
		</template>
		<template id="three">
			<div>
			<div>three</div>
			<div>threething</div>	
			</div>
		</template>
	</body>
	<script type="text/javascript">
		var vm=new Vue({
			el:"#app",
			data(){
				return {
					showname:'one'
				}
			},
			methods:{
				
			},
			components:{
				'one':{
					template:'#one'
				},
				'two':{
					template:'#two'
				},
				'three':{
					template:'#three'
				}
			}
		})
	</script>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue中,组件可以通过"component:is"参数来动态地选择组件类型。该参数可以接收一个字符串或一个组件选项对象。它通常用于解决在不同情况下使用不同组件的需求。 当"component:is"参数接收一个字符串时,它表示要渲染的组件的名称。这个名称可以是注册过的全局组件名称,也可以是局部组件的名称。通过这种方式,我们可以在同一个地方使用不同的组件。 当"component:is"参数接收一个组件选项对象时,它表示要渲染的组件的具体配置。这个对象可以包含组件模版、组件数据等。通过这种方式,我们可以动态地定义和构造组件,而不是直接引用已经存在的组件。 使用"component:is"参数有如下几个实际应用场景: 1. 条件渲染组件:根据不同的条件动态切换组件。比如,根据用户的登录状态来选择渲染登录组件还是注册组件。 2. 列表渲染组件:根据不同的数据源动态生成组件列表。比如,在一个论坛应用中,根据帖子的类型来选择合适的帖子组件渲染。 3. 动态组件切换:在一个视图中,根据用户的操作来选择展示不同的子组件。比如,根据用户点击的菜单项来展示对应的内容组件。 总之,"component:is"参数是Vue中非常有用的一个功能,它能够灵活地选择不同的组件类型,并且让我们能够根据具体需求动态地渲染组件。通过灵活使用"component:is"参数,我们可以更好地构建复杂灵活的Vue应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值