在v-html中显示和渲染Vue组件

时间:2018-12-11 19:11:17

标签: javascript html vue.js vuejs2

因此,我将自己帖子的HTML存储在数据库中(作为下面的示例内容) 在我的帖子页面上,您可以在其中查看数据,我有一个简单的

<span v-html="content"></span>

我想问一下如何从数据库中获取Vue组件,使其成为HTML,例如作为示例,或者通常作为v-html。

如果不像我在其他来源经常阅读的那样使用v-html,那么这里的最佳用例是什么?

<div v-swiper:mySwiper="">
  <div class="swiper-button-prev" slot="button-prev"></div>
  <div class="swiper-button-next" slot="button-next"></div>
  <div class="swiper-pagination" slot="pagination"></div>
  <div class="swiper-wrapper">
   <div class="swiper-slide"><img src="v8.jpg"></div> 
   <div class="swiper-slide"><img src="v7.jpg"></div>
   <div class="swiper-slide"><img src=v6.jpg"></div>
  </div>
<div class="swiper-pagination"></div> 
</div>

1 个答案:

答案 0 :(得分:0)

我不会这么早就掉毛巾。看看https://github.com/alexjoverm/v-runtime-template

这可能对您的用例很有用,因为通常会担心这些方法对恶意注入的安全性。

但是,从长远来看,我会寻找一种不同的解决方案,例如在所见即所得编辑器中嵌入一些特殊标签,并在呈现内容时(可能使用动态组件https://vuejs.org/v2/guide/components-dynamic-async.html)将这些标签替换为真实的组件。