CNode

请问 vue里面怎么v-if 直接就 v-else ,怎么没有v-ifelse

问答
Bblackjack发布于10 年前最后回复9 年前14 回复15395 浏览0 收藏

如标题,怎么实现

查看回复

回复 (14)

J
Jaymi66#1·10 年前

可以去看一下自定义指令,具体我也是在学习

B
blackjack#2·10 年前

@Jaymi66 多谢

A
artisan#3·10 年前

第二个elseif写在v-else里不就行了么。。。。

A
artisan#4·10 年前
v-if
xxxx
v-else
   v-if
   xxx
B
blackjack#5·10 年前

@artisan 牛气,可以,不过条件多的话很费劲

A
alsotang#6·10 年前

模板的条件多了感觉挺没意思的,如果条件嵌套比较复杂的话,考虑用 computed 属性,然后判断这个属性吧。

J
jaylinWang#7·10 年前

楼上正解,vuejs的计算属性由此而生

K
klausgao#8·10 年前

不懂大家有没有发现,computed和method其实是一样的,而computed 还不能动态传参数。。。。

B
blackjack#9·10 年前

多谢各位,我也是最近在看vue,够轻量 感觉不错

B
blackjack#10·10 年前

@alsotang @klausgao computed和method一个能接受参数 一个不能接受参数,用这两个方法都能实现多条件问题,那computed有什么特殊引用场景啊

A
alsotang#11·10 年前
引用 blackjack@alsotang @klausgao computed和method一个能接受参数 一个不能接受参数,用这两个方法都能实现多条件问题,那computed有什么特殊引用场景啊

@blackjack 在我看来的话,我觉得除去取值方式不说,computed 是 method 的功能子集。

就性能来说的话,vue 知道 computed 依赖哪些属性,所以 computed 依赖的属性不更新时,computed 的值也不会更新。而 method 在每次使用的时候,都需要计算一次(当然这点性能影响不大。

https://cn.vuejs.org/guide/computed.html

至于用哪个,其实可以都用 method。但明显有些场合用 computed 【看起来】更舒服些。比如一个人有 firstname: also, lastname: tang。那么它的fullname,自然而然我们希望是 this.fullname,而不是 this.getFullname()。没有什么本质的区分来决定到底用哪个。

B
blackjack#12·10 年前

@alsotang 多谢多谢,

J
Jaymi66#13·10 年前

跟大神学习了!

B
boxsnake#14·9 年前

参见:条件渲染 —— Vue.js

Vue 2.1支持v-else-if

参与回复
登录后即可参与回复。登录