如何在Vue中从数据库渲染html

Jac*_*ina 5 mysql rich-text-editor vue.js vue-component vuejs2

我正在使用博客应用Vue.js的前端和Node.js的的后端。

我在前端使用富文本编辑器 ( vue2-editor ) 供用户创建博客内容。我想将该内容存储在数据库 (MySQL) 中并检索它。目前,我存储的任何内容都是纯 HTML。

<p><strong>This is Blog Heading</strong></p><p><br></p><p><u>This is underlined</u></p><p><br></p><p>This is start of the paragraph</p>
Run Code Online (Sandbox Code Playgroud)

从数据库中检索后,它呈现为字符串而不是 HTML

我怎样才能让它正确显示 HTML?

T. *_*ort 9

用于v-html将其显示为 html 而不是字符串。

你可以在这里读更多关于它的内容:

https://vuejs.org/v2/guide/syntax.html

例子:

<div v-html="htmlFromDb" />
Run Code Online (Sandbox Code Playgroud)

  • 将 html 存储在数据库中没有任何危险。然而,当您在用户浏览器中显示它时,危险就会出现。例如,如果您将恶意 JavaScript 存储在数据库中,则不会发生任何事情。但当它加载到用户浏览器中时,可能会造成一些危害。因此,也许添加一些检查并确保只有您信任的人/现在他们正在做什么才能存储 html。 (2认同)