Vue v-if 和 v-else 引发的一个问题?

Vue v-if 和 v-else 引发的一个问题?

请问这里这种场景下,我如果将 v-else 替换成 v-if 的条件取反。这两种会有本质上的差异吗?(我不是指样式上的)

之前一直没有思考过这个问题,还望指教,respect。


回答:

理论上来说v-ifv-else比将 v-else 替换成 v-if 的条件取反效率高一丢丢, 这一丢丢是感受不到的:

v-ifv-else可以理解为

if() {} else {}

将 v-else 替换成 v-if 的条件取反可看为:

if () {}

if () {}

执行时会做两次if判断, 就会重复判定 效率会低


回答:

只替换else的话有区别,多走一个判断,就跟js是一个道理的,最终就是翻译成js的if...else


回答:

会有区别啊,一个是判断两次,一个是直接取短路。
你也可以直接读源码 core/vIf.ts at 0fbc19f2d034a3a50f5c9114ae58bf8f06cf241d · vuejs/core

以上是 Vue v-if 和 v-else 引发的一个问题? 的全部内容, 来源链接: utcz.com/p/933595.html

回到顶部