本文实例讲述了Vue常用指令。分享给大家供大家参考,具体如下:
1、创建一个vue实例
vue的一个特点就是数据驱动界面,一旦对js中的数据进行修改,界面中用到数据的地方也会立马做出更改。为了对界面进行操纵,需要先获取到界面的标签元素,并实例化一个vue实例。
例如在HTML创建一个div:
<div id="app"> <p>{{msg}}</p> </div>
在js中将其实例化为vue对象:
let app=new Vue({ el:'#app',//标签的类名、id,用于获取元素 //以键值对的形式存放用到的数据成员 data:{ msg:'显示的内容' }, //包含要用到的函数方法 methods:{ } });
这样js中msg的内容就会在p标签内显示出来。
2、vue常用指令
1、 v-model:将组件与变量进行双向绑定,当组件数据修改时,变量会随之改变。它后面可加修饰符,例如.lazy,只有在标签中的值发生改变时才同步到变量,.trim过滤用户输入中的空格。
2、v-once:不允许修改数据,例如HTML中有如下三个标签:
<div id="app"> <p v-once>{{msg}}</p> <p>{{msg}}</p> <input type="text" v-model="msg"> </div>
在input框内输入内容后,会传到msg变量中,第二个p标签内显示的信息会随着msg发生变化,而第一个带有v-once的p标签则只会显示msg的初始值,不会随之变化。
3、v-if="表达式",根据表达式的结果来判断,是true则渲染元素,false则将元素注释掉
4、v-show与v-if类似,true就渲染,但是false并不是注释掉,而是通过display:none;来将元素隐藏,如果需要来回切换,使用v-show更好。例如:
<p v-if="show">显示内容</p> <p v-if="hide">注释内容</p> <p v-show="hide">v-show隐藏</p>
令show:true,hide:false,结果如下:
5、v-else、v-else-if与v-if连在一起使用构成逻辑判断,根据返回值决定是否显示,不可以单独或者分开使用,例如:
<p>请输入分值:</p> <input type="text" v-model="score"> <p v-if="score>90">优秀</p> <p v-else-if="score>80">良好</p> <p v-else-if="score>60">中等</p> <p v-else>不及格</p>
测试结果为:
6、v-for用于遍历元素,使用格式为v-for="(值,键) in 遍历内容",其遍历的内容可以是数组、对象、字符串,例如在js的data中有一个person对象,person:{name:'tony',age:15,sex:'男'},将其内容在页面遍历输出:
<p v-for="(value,key) in person"> {{key+':'+value}} </p>
生成结果如下:
7、v-text:向标签内注入数据,并且覆盖标签内的其他内容
8、v-html:向标签内覆盖注入HTML内容作为其子元素。例如:
<div v-html="vhtml">标签内原来内容</div>
结果插入一个子div并将覆盖原内容:
9、v-bind:给标签绑定属性、类、样式等,可以缩写为冒号,例如:
<!-- 完整语法 --> <a v-bind:href="url" rel="external nofollow" rel="external nofollow" >...</a> <!-- 缩写 --> <a :href="url" rel="external nofollow" rel="external nofollow" >...</a>
由于vue的界面元素都是由数据驱动的,js代码从服务器获得的属性、样式等数据需要通过绑定加到HTML界面元素上,通过绑定可以更为灵活地选择要添加属性的元素。Vue并不是直接操纵元素的class,而是通过绑定一个数据到class上,然后通过数据驱动class的有无,从而改变页面的显示,这充分显示了vue数据驱动的特点。
例如给上面person对象中key为'name'的那一行信息绑定一个active类使其高亮显示:
<!--通过v-for循环遍历person数组,绑定class,如果键值为name,绑定的class='active'--> <p v-for="(value,key) in person" :class="key==='name' "> {{key+':'+value}} </p>
结果:
也可以使用如下方法来绑定一个类名,页面会根据变量isActive与hasError的true或false来确定是否绑定active与text-danger类,甚至可以将active设为计算属性,运算后返回true/false。
注意:绑定的属性可以用驼峰命名法或使用短横线来连接,但使用短横线要用引号引起来
<div class="static" v-bind:class="{ active: isActive, 'text-danger': hasError }"> </div>
10、v-on:给标签绑定函数,可以缩写为@,例如绑定一个点击函数
<p>{{msg}}</p> <button @click="changeContent()">change</button>
在Vue的methods中实现changeContent函数:
let app=new Vue({ el:'#app', data:{ msg:'第一次输入信息', }, methods:{ changeContent(){ this.msg="修改后的输入信息"; } } });
原页面与点击后:
Vue.js 为 v-on 提供了事件修饰符。修饰符是由.开头的指令后缀来表示的,用于对事件进行约束。例如:
<!-- 阻止单击事件继续传播 --> <a v-on:click.stop="doThis"></a> <!-- 提交事件不再重载页面 --> <form v-on:submit.prevent="onSubmit"></form> <!-- 修饰符可以串联使用,并且使用的顺序很重要 --> <a v-on:click.stop.prevent="doThat"></a> <!-- 添加事件监听器时使用事件捕获模式 --> <!-- 即元素自身触发的事件先在此处处理,然后才交由内部元素进行处理 --> <div v-on:click.capture="doThis">...</div> <!-- 只当在 event.target 是当前元素自身时才触发函数 --> <!-- 即事件不从内部元素触发 --> <div v-on:click.self="doThat">...</div> <!-- 点击事件将只会触发一次 --> <a v-on:click.once="doThis"></a>
除了点击事件外,还有按键事件,例如按下键盘码为13的按钮时触发:
<input v-on:keyup.13="submit">
为了方便使用vue将一些常用按键重命名,可以使用事件修饰符来使用,包括:.enter、.delete、.tab、.space、.esc、.up、.down、.right、.left等,也可以自定义:
Vue.config.keyCodes.f1 = 112;
希望本文所述对大家vue.js程序设计有所帮助。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新日志
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]