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="/UploadFiles/2021-04-02/vue.min.js">(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="/UploadFiles/2021-04-02/vue.min.js">由于computed用于计算属性,而reversedMessge相对于computed的属性的获得,其this指向的是vm的实例,当message发生改变的时候,对应的reversedMessage也会发生相对应改变。
扩展:computed VS methods
由于computed与methods实现效果相同,所以也可以使用methods来替代computes,
区别如下:
a、computed基于它的依赖缓存,只有相关依赖发生改变时,才会重新取值;
b、methods而言,在重新渲染的时候,函数总会重新调用执行。
可以说computed性能会更好,但若不希望缓存,可以使用methods属性
4、样式绑定
在vue中由于class与style是HTML元素的属性,用于设置元素的样式,可以用v-bind来设置样式属性
实例1:
<div v-bind:class="{active:isActive}"></div>等价于
<div class="active">(1)vue.js.style(内联样式)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script type="text/javascript" src="/UploadFiles/2021-04-02/vue.min.js">(2)使用数组将多个样式对象应用到一个元素上
<div v-bind:style="[baseStyles,overridingStyles]">菜鸟教程</div> <script> new Vue({ el:'#app', data:{ baseStyles:{ color:'green', fontSize:'30px' }, overridingStyles:{ 'font-weight':'blod' } } }) </script>以上这篇Vue条件循环判断+计算属性+绑定样式v-bind的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
更新日志
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]