v-html 和 v-text 有什么区别?

Ced*_*Ced 7 ampersand vue.js vuejs2

我使用v-text有以下代码:

<h1 v-text="content.title"></h1>
Run Code Online (Sandbox Code Playgroud)

输出:

品牌名称是 B&C

所以我在上一行中使用v-html修复了它:

<h1 v-html="content.title"></h1>
Run Code Online (Sandbox Code Playgroud)

输出:

品牌名称是 B&C

我的问题如下:为什么它可以使用v-html而不是v-text?我已经阅读了 Vue 文档,但我不清楚其中的区别。

Roy*_*y J 7

v-text设置节点的文本内容。v-html设置元素的innerHTML。&amp;是一个 HTML 实体。如果您希望解释和替换 HTML 实体,则需要将它们解释为 HTML 而不是文本。

  • 我认为他指的是 XSS(跨站点脚本)(这里有一个阅读:https://www.computerweekly.com/tip/Cross-site-scripting-explained-How-to-prevent-XSS-attacks)。你只需要小心你放在 v-html 中的数据来自安全的地方和/或被正确清理,所以你不要打开你的网站来执行恶意脚本:) (3认同)