Vue.js学习课程(3 / 6)
13. 条件渲染
知识点
- v-if
- v-else-if
- v-else
v-if
判断vue.js的变量的值,然后执行页面渲染逻辑。(if-elseif-else)
<div id="myApp">
<h1 v-if="result == 0">成绩未公布</h1>
<h1 v-else-if="result < 60">{{result}}分 - 考试不及格</h1>
<h1 v-else-if="result < 80">{{result}}分 - 还需努力</h1>
<h1 v-else>{{result}}分 - 考得不错,玩游戏吧!</h1>
<button @click="btnClick">考试成绩</button>
</div>
<script>
var myApp = new Vue({
el: '#myApp',
data: {
result: 0
},
methods: {
btnClick: function(){
this.result = Math.round(Math.random() * 100);
},
},
});
</script>
14. 元素显示v-show
知识点
- v-show
v-show
标记是否显示html元素。(注意:v-show设置的标记在html DOM中不会消失)
<div id="myApp">
<h1 v-show="result">任天堂新一代主机Switch</h1>
<button @click="btnClick">考试成绩</button>
</div>
<script>
var myApp = new Vue({
el: '#myApp',
data: {
result: true
},
methods: {
btnClick: function(){
this.result = !this.result;
},
},
});
</script>
15. 列表渲染
知识点
- v-for
v-for
循环数组元素,整理内容显示到页面上。
<div id="myApp">
<ul>
<li v-for="(game, index) in games">({{index}}) {{game.title}} / 售价:{{game.price}}元</li>
</ul>
</div>
<script>
var myApp = new Vue({
el: '#myApp',
data: {
games: [
{title:"勇者斗恶龙",price:500},
{title:"库跑卡丁车",price:400},
{title:"马里奥世界",price:550},
]
},
});
</script>
16. JS对象迭代
知识点
- v-for
v-for
循环JS对象,把对象内容循环显示到页面上。
<div id="myApp">
<h1>JS对象迭代</h1>
<div v-for="(value, key) in mygame">
{{ key }} : {{ value }}
</div>
</div>
<script>
var myApp = new Vue({
el: '#myApp',
data: {
mygame: {
title: "乌贼娘2代",
price: 350,
pubdate: "2017年夏季",
category: "射击",
agerange: "全年龄",
},
},
});
</script>
17. 事件处理器
知识点
- v-on:(event)/@(event)
v-on:(event)
页面元素的事件绑定。(click,keyup,load等等)
<div id="myApp">
<h1>事件处理器</h1>
<input id="txtName" v-on:keyup="txtKeyup($event)">
<button id="btnOK" v-on:click="btnClick($event)">OK</button>
</div>
<script>
var myApp = new Vue({
el: '#myApp',
data: {},
methods: {
txtKeyup: function(event){
this.debugLog(event);
},
btnClick: function(event){
this.debugLog(event);
},
debugLog:function(event){
console.log(
event.srcElement.tagName,
event.srcElement.id,
event.srcElement.innerHTML,
event.key?event.key:""
);
},
},
});
</script>
18. 表单控件绑定
知识点
- v-model
- input[type=“text”]
v-model
为表单控件元素创建双向数据绑定。(将JS变量的值“快速”设定到控件上,然后将用户输入的内容“快速”设置回JS变量)
<div id="myApp">
<h1>表单控件绑定</h1>
<input type="text" v-model="message" placeholder="来呀,编辑我吧!">
<p>Message is: {{ message }}</p>
<textarea v-model="message" placeholder="加入多行编辑" rows="8" cols="34"></textarea>
</div>
<script>
var myApp = new Vue({
el: '#myApp',
data: {
message: "我爱马里奥",
},
methods: {
},
});
</script>
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/135678.html