Vue.js條件與循環
1、條件判斷
(1)v-if,
<div id="app"> <p v-if="seen">現在你看到我了</p> <template v-if="ok"> <h1>菜鳥教程</h1> </template></div> <script> new Vue({ el:'#app', data:{ seen:true, ok:true } });</script>(2)v-else-if
(3)v-else
<div id="app"> <div v-if="type === 'A' ">A</div> <div v-else-if="type === 'B' ">B</div> <div v-else="type === 'C' ">C</div></div> <script> new Vue({ el:'#app'; data:{ type:'C' } });</script>(4)v-show
除了v-if、v-else-if、v-else,還可以使用v-show指令來根據條件展示元素
<div id="app"> <h1 v-show="ok">Hello</h1></div> <script> new Vue({ el:'#app', data:{ ok:true } });</script>2、循環語句
使用v-for指令
(1)簡單的v-for
<ol> <li v-for="site in sites">{{ site.name }}</li> </ol>(2)模板中的v-for
<template v-for="site in sites"> <li> {{ site.name }} </li> <li> ----- </li> </template>綜合小案例,如下:
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> <script type="text/javascript" src="js/vue.min.js" ></script> </head> <body> <div id="app"> <ol> <li v-for="site in sites"> {{ site.name }} </li> </ol> <!--利用模板化template進行循環--> <ul> <template v-for="site in sites"> <li>{{ site.name }}</li> <li>-------</li> </template> </ul> </div> <script> new Vue({ el:'#app', data:{ sites:[ {name:'Zhao'}, {name:'Xiao'}, {name:'yan'} ] } }); </script> </body></html>(3)v-for迭代對象
a.一個參數
原理:<li v-for="value in object"> {{ value }}
b.兩個參數
原理:<li v-for="(value,key) in object" > {{ key }} : {{ value }}
(4)v-for迭代整數
<div id="app"> <ul> <li v-for="n in 10"> {{ n }} </li> </ul></div> <script>new Vue({ el: '#app'})</script>3、計算屬性computed
計算屬性主要適用于一些復雜的邏輯關系,
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>計算屬性</title> <script type="text/javascript" src="js/vue.min.js" ></script> </head> <body> <div id="app"> <p>原始字符串:{{message}}</p> <p>計算后反轉字符串:{{reversedMessage}}</p> </div> <script> var vm=new Vue({ el:'#app', data:{ message:'Runoob' }, computed:{ //計算屬性reversedMessage的getter reversedMessage:function(){ //this指向vm實例 return this.message.split('').reverse().join(''); } } }) </script> </body></html>
新聞熱點
疑難解答
圖片精選