Chr*_*ris 7 if-statement view vue.js
是否有可能有一个if/else语句不会在类似于knockout的视图中呈现任何html:
<!-- ko if: someExpressionGoesHere -->
Run Code Online (Sandbox Code Playgroud)
小智 10
但它需要在一个元素上
是的,但如果v-if条件为假,则不会将其添加到DOM树中.
HTML
<div id="main"></div>
Run Code Online (Sandbox Code Playgroud)
JavaScript的
new Vue({
el: "#main",
template: '<div v-if="name"><span v-text="name"></span></div>',
data: {
// name: "bob"
}
});
console.log(document.body.innerHTML);
// <div id="main"><!--vue-if--></div>
Run Code Online (Sandbox Code Playgroud)
还不对你好吗?
我知道这个问题已经得到了回答,但我想我会传递我使用的东西,现在我正在用 Vue 编写网站(我喜欢它。)我是 Knockout 的粉丝,并且有很多网站使用:
<!-- ko if: someExpressionGoesHere -->
Run Code Online (Sandbox Code Playgroud)
你可以在 Vue 中做类似的事情:
<template v-if="someExpressionGoesHere">
<p>Expression is True</p>
</template>
<template v-else>
<p>Expression is False</p>
</template>
Run Code Online (Sandbox Code Playgroud)
该template旨意不会呈现任何内容到页面。生成的 html 将是p“Expression is xxx”中的一个。
我认为这里代码的意图比这篇文章的实际答案更清楚,恕我直言。