1. vue.js的v-if判断数组有多少个
有6个。
v-if 条件渲染指令,根据其后表达式的bool值进行判断是否渲染该元素;所以,v-if指令只渲染他身后表达式为true的元素;在这里引入v-show指令,因为二者的区别是v-show指令会渲染他身后表达式为false的元素,这样的元素上会添加css代码:style="display:none"; 将上面v-if的实例代码改为v-show
v-show 与v-if类似,只是会渲染其身后表达式为false的元素,而且会给这样的元素添加css代码:style="display:none";
v-else 必须跟在v-if/v-show指令之后,不然不起作用;如果v-if/v-show指令的表达式为true,则else元素不显示;如果v-if/v-show指令的表达式为false,则else元素显示在页面上;
v-for 类似JS的遍历,用法为 v-for="item in items", items是数组,item为数组中的数组元素。
v-bind 这个指令用于响应地更新 HTML 特性,比如绑定某个class元素或元素的style样式。
v-on 用于监听指定元素的DOM事件,比如点击事件。
2. Vue.js中常用指令有哪些
数据渲染:v-text、v-html、{{}}
v-for 渲染循环列表
v-on绑定事件
v-bind 绑定属性
3. vue.js的v-if判断数组多少个
直接上代码比如
<li v-for ="i in custom">
</li>
上面是循环一个数组然后生成li,但是我想 实现 如果 index是0 就给 li 加个 class,大于0 就不加class怎么做? 比如
<li v-for ="i in custom" v-if="{{$index === 0}}" class="hehe">
</li>
4. 如何利用Vue.js库中的v-if内部指令判断元素显示
在 Vue.js ,使用v-if指令判断元素显示
<h1v-if="ok">Yes</h1>
<!--当ok为true时,该元素显示,否则不显示-->
在<template>中配合v-if条件渲染一整组
因为v-if是一个指令,需要将它添加到一个元素上。但是如果想切换多个元素,此时可以把一个<template>元素当做包装元素,并在上面使用v-if。最终的渲染结果不会包含<template>元素。
<templatev-if="ok">
<h1>Title</h1>
<p>Paragraph1</p>
<p>Paragraph2</p>
</template>
v-if是“真正的”条件渲染,因为它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建。
v-if也是惰性的:如果在初始渲染时条件为假,则什么也不做——直到条件第一次变为真时,才会开始渲染条件块。
相比之下,v-show就简单得多——不管初始条件是什么,元素总是会被渲染,并且只是简单地基于 CSS 进行切换。
一般来说,v-if有更高的切换开销,而v-show有更高的初始渲染开销。因此,如果需要非常频繁地切换,则使用v-show较好;如果在运行时条件不太可能改变,则使用v-if较好。
5. 如何利用Vue.js库中的v-if内部指令判断元素显示
Vue.js库中带有一些内部指令,有v-if、v-show、v-else、v-on等。其中,v-if是根据表达式的值判断一个元素是生成或移除,如果判断为true,就生成元素;否则,移除元素。下面利用一个实例说明v-if的用法,操作如下:
工具/原料
Vue.js
HBuilder
截图工具
浏览器
方法/步骤
第一步,创建静态页面vif.html,为了表达v-if指令实例,添加title内容,如下图所示:
第二步,引入Vue.js核心js文件
<script src="../js/vue.min.js" ></script>
如下图所示:
第三步,在body元素内部插入一个div和p,并给div一个id值,p元素内添加一个v-if,值为boolean,内部内容为“欢迎使用Vue.js”,如下图所示:
第四步,在<script></script>中编写Vue.js代码,设置el和data数据,预览页面,如下图所示:
第五步,将data内boolean设置为false,设置完毕,进行查看效果,如下图所示:
第六步,再次预览页面,发现“欢迎使用Vue.js”不显示出来,如下图所示:
6. Vue.js v-for中能不能嵌套使用v-if
可以使用 v-if。但是因为 v-if 的优先级低于 v-for, 所以 v-if 可能依赖 v-for 创建的变量,所以没有办法使用 v-else。
7. 如何利用Vue.js库中的v-if内部指令判断元素显示
v-show是通过其值为true或者false来决定所包含的元素是否显示。举例如下:HTML: 123JavaScript(Vue):var vm = new Vue({ el: '#app', data: { ok: true }});默认情况下运行结果会在页面上显示这个p元素,也就是会出现123字符串。当我们在控制台中使用vm.ok=false;将其值设置为false后。123字符串将立即消失,即p元素被隐藏了。
8. 如何利用Vue.js库中的v-if内部指令判断元素显示
第一步,创建静态页面vtext.html,修改title显示的内容并引入vue.js,
第二步,在body标签元素内插入两个span元素,在第一个span绑定v-text指令,第二个span中插入{{message}},
第三步,编写JS代码,绑定数据源message,
第四步,预览静态页面vtext.html,发现{{message}}还是一样,未变成赋的值,
第五步,在两个span外层添加一个div,并将第一个span的id赋给div,再在第一个span标签上绑定v-model,
第六步,再次预览发现页面中的{{message}}变为绑定的数据源,
9. Vue.js中v-if的一个小问题
v-if判断的本质就是布尔值的true和false,只要能满足条件是可以有运算符的。你这个是逻辑问题,假如books.length本身是0,books.length == 0得到的布尔值是true,而0的布尔值是false,你两个判断的依据不同,得到的结果自然不一样。
10. 如何利用Vue.js库中的v-if内部指令判断元素显示
<div id="example01">
<p v-if="male">Male</p>
<p v-if="female">Female</p>
<p v-if="age>25">Age:{{age}}</p>
<p v-if="name.indexOf('lin')>0">Name:{{name}}</p>
</div>
当age大于25时,Age那一行显示,否则不进行显示
当name包含'lin'时,显示该行,否则不显示