首页 > 解决方案 > Vue.js 在 v-text 中连接字符串

问题描述

我正在尝试在 v-text 指令中连接字符串。简单的例子:

<ul>
  <li v-for="obj in frameworks"> {{ obj.name }} has {{ obj.vite }} users
    <button v-on:click="removeFw(obj)" v-show="mode == 'edit'">Delete</button>
  </li>
</ul>

这工作正常。现在,如果我使用下面的 v-text,而不是使用文本插值,我仍然会显示文本,但Delete无论mode属性的值如何,按钮都会消失。如果用户单击按钮,这些按钮应该是可见的edit

 <ul>
    <li v-for="obj in frameworks" v-text="`${obj.name} has ${obj.votes} users`">
     <button v-on:click="removeFw(obj)" v-show="mode == 'edit'">Delete</button>
    </li>
 </ul>

这是小提琴: https ://jsfiddle.net/30a6edvs/

谁能解释一下原因。

标签: vue.jsvue-directives

解决方案


使用 v-text 将替换元素的内部文本/html,因此您看不到其中的删除按钮。所以你必须做你的第一个示例代码。


推荐阅读