vue高级(第二十三天)

vue指令

使用方式:就是再HTML的标签上,加上一些v-的指令

1,v-model:实现数据驱动,双向绑定

<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script src="vue.js" type="text/javascript">
            
        </script>
        <style type="text/css">
            [v-cloak]{
                display: none;
            }
        </style>
    </head>
    <body> 
        <div id="app" v-cloak>
            <input type="text" v-model="mas"></br>
            <p v-html="mas"></p>
            <p v-if="age>=21">lb</p>
            <p v-if="age>=25">nb</p>
            <p v-show="age>=21">{{mas}}</p>
            <p v-if="type==='A'">良好</p>
            <p v-else-if="type==='A'">超良好</p>
            <p v-else>好</p> 
            <p v-for="i in arr">{{i}}</p>
            <p v-for="i,index in arr">{{i}}{{index}}</p>
            <p v-on:onli></p>
            </div>
        
        <script type="text/javascript">
            new Vue({ 
                el:"#app",
                data:{
                    type:'A',
                    mas:"<h1>sb</h1>",
                    arr:[
                        '杨幂','d','asd'
                    ],
                    age:24
                },
                methods:{}
            })
        </script>
    </body>
</html>

二,命令

创建命令并调用

双向绑定 v-model:修改一方同时修改相同的另一方,达到数据同时更新

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>v-命令</title>
		<script src="vue.js" type="text/javascript">
			
		</script>
	</head>
	<body>
		<div id="app">
			{{name}}
			<input type="text" v-model="name" />
		</div>
		<script type="text/javascript">
			new Vue({
				el:"#app",
				data:{
					name:"王振亚",
					age:26
				},
				methods:{
					show(){
						console.log("喜欢展出")
					}
				}
			})
		</script>
	</body>
</html>

闪现 v-cloak

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script></script>
		<style>
			[v-cloak]{
				display: none;
			}
		</style>
	</head>
	<body>
		<h1>注册表单</h1>
		<form v-cloak>
        ......
        </form>
	</body>
</html>

v-if

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script src="vue.js" type="text/javascript">
			
		</script>
	</head>
	<body>
		<div id="app">
			<p v-if="age>=27">成年人</p>
			<p v-if="age<27">成年人</p>
			
		</div>
		<script type="text/javascript">
			new Vue({
				el:"#app",
				data:{
					name:"王振亚",
					age:27
				},
				methods:{
					show(){
						console.log("我是谁")
					}
				}
			})
		</script>
	</body>
</html>

v-for 

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script src="vue.js"></script>
	</head>
	<body>
		<div id="sss">
			<!-- 其中i是数组,index是下标 -->
			<p v-for="i,index in arr">{{i}}{{index}}</p>
		</div>
		<script type="text/javascript">
			new Vue({
				el:"#sss",
				data:{
					name:"wangzhenya",
					age:25,
					arr:[
						"aaa","bbb","ccc"
					]
				},
				methods:{
					
				}
			})
		</script>
	</body>
</html>

v-bind 

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script src="vue.js"></script>
	</head>
	<body>
		<div id="amg">
			<a v-bind:href="url" target="_blank">{{name}}</a>
		</div>
		<script>
			new Vue({
				el:"#amg",
				data:{
					name:"wangzhenya",
					age:28,
					url:"http://www.taobao.com"
				}
			})
		</script>
	</body>
</html>

v-html

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script src="vue.js"></script>
	</head>
	<body>
		<div id="amg">
			<p v-html="name">{{name}}</p>
		</div>
		<script>
			new Vue({
				el:"#amg",
				data:{
					name:"<h1>wangzhenya</h1>",
					age:28,
					url:"http://www.taobao.com"
				}
			})
		</script>
	</body>
</html>

2.所有命令的巩固

<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script src="vue.js"></script>
    </head>
    <body>
        <div id="app">
            <p v-for="i,index in desc">{{index}}.{{i}}</p>
            <input v-model="name" type="text"/></br>{{name}}
            <p v-if="age>60">{{age}}</p>
            <ol>
                <li v-html="address">{{address}}</li>
                <a @click="show()">点我</a>
                <a :href="url">点击</a>
                <h1 v-show="seen">see you again</h1>
                <input type="radio" value="w3c" v-model="site" />w3c
                <input type="radio" value="runoob" v-model="site" />runoob
                <p>你选择的是:{{site}}</p>
            </ol>
        </div>
        <script>
            new Vue({
                el:"#app",
                data:{
                    site:'',
                    name:"2507",
                    address:"<h1>淮北</h1>",
                    age:56,
                    seen:true,
                    url:"http://www.pinduoduo.com",
                    desc:['小李飞刀','降龙十八掌','葵花宝典','九阴白骨爪']
                },
                methods:{
                    show(){
                        console.log("笑傲江湖")
                    }
                }
            })
        </script>
    </body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员慕慕

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值