学习Vue(3)——条件语句

vue的条件判断是通过v-if、v-else、v-else-if、v-show指令来实现的。

v-if

其中v-if指令根据值(true或false)判断是否执行操作,但是只有为true时才执行v-if的指令,如果没有v-else的话那么久不执行当为false时的操作。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>学习Vue</title>
		<!-- 使用CDN引入Vue.js -->
		<script type="text/javascript" src=" https://cdnjs.cloudflare.com/ajax/libs/vue/2.1.8/vue.min.js"></script>
	</head>
	<body>
		<div id="app">
			<!-- 这里根据复选框是否选中来决定下面这段文本是否显示 -->
			<input type="checkbox" v-model="isChecked" />是否显示
			<!-- 如果复选框被选中则isChecked是true则显示文本,如果复选框未被选中则isChecked是false表示下面这段文本不显示 -->
			<p v-if="isChecked">如果isChecked是true则显示该段文本,是false则不显示。</p>
		</div>

		<script type="text/javascript">
			new Vue({
				el: "#app",
				data: {
					// 复选框是否选中,初始为选中表示true
					isChecked: true
				}
			})
		</script>
	</body>
</html>

浏览器展示:

v-else

可以用 v-else 指令给 v-if 添加一个 "else" 块。v-else是结合v-if使用,是为了处理当v-if为false时的操作。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>学习Vue</title>
		<!-- 使用CDN引入Vue.js -->
		<script type="text/javascript" src=" https://cdnjs.cloudflare.com/ajax/libs/vue/2.1.8/vue.min.js"></script>
	</head>
	<body>
		<div id="app">
			<!-- 判断randomNum是否大于0.5,如果大于0.5输出v-if的操作,如果不大于0.5输出v-else,v-else指令没有任何值 -->
			<p v-if="randomNum>0.5">{{randomNum}} 大于0.5</p>
			<p v-else>{{randomNum}} 不大于0.5</p>
		</div>

		<script type="text/javascript">
			new Vue({
				el: "#app",
				data: {
					// 产生一个随机数
					randomNum: Math.random()
				}
			})
		</script>
	</body>
</html>

浏览器显示:

v-else-if

用作 v-if 的 else-if 块。可以链式的多次使用。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>学习Vue</title>
		<!-- 使用CDN引入Vue.js -->
		<script type="text/javascript" src=" https://cdnjs.cloudflare.com/ajax/libs/vue/2.1.8/vue.min.js"></script>
	</head>
	<body>
		<div id="app">
			<p v-if="typeName==='石头'">石头</p>
			<p v-else-if="typeName==='剪刀'">剪刀</p>
			<p v-else-if="typeName==='布'">布</p>
			<p v-else>请重来</p>
		</div>

		<script type="text/javascript">
			new Vue({
				el: "#app",
				data: {
					typeName:'石头'
				}
			})
		</script>
	</body>
</html>

浏览器展示:

注意:v-else 、v-else-if 必须跟在 v-if 或者 v-else-if之后。

v-show

使用 v-show 指令来根据条件展示元素:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>学习Vue</title>
		<!-- 使用CDN引入Vue.js -->
		<script type="text/javascript" src=" https://cdnjs.cloudflare.com/ajax/libs/vue/2.1.8/vue.min.js"></script>
	</head>
	<body>
		<div id="app">
			<p v-show="typeName='石头'">恭喜你,答对了!</p>
		</div>

		<script type="text/javascript">
			new Vue({
				el: "#app",
				data: {
					typeName: '石头'
				}
			})
		</script>
	</body>
</html>

浏览器展示:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值