vue如何把一段字符串形式的SFC或者SFC Descriptor转化成组件并渲染出来呢?

最近在做一个项目,需要通过拖拽等一系列操作生成一个页面,这个页面是用代码拼出来的一段vue代码,想把它存到后端,所有的页面组在一起做成独立系统,现在的问题在于如何把vue代码从后端拿过来并转成组件后渲染出来?通过调用vue3packages里的@vue/compiler-sfc可以把vue字符串转成SFC Descriptor,但怎么最后解析成页面或者vue组件呢?[基于vue2或vue3的解决办法都可以]

 

const str = `
<template>
  <h1>……</h1>
  …………
</template>
<script>
  @import ……
  export default {}
</script>
<style lang="less" scoped>
  h1 {}
</style>`

如上,这是一段简单的vue sfc的字符串,通过parse方法解析后的结果是

问题在于怎么样把它或者说换一种方式把sfc字符串转成vue组件?
【不能用iframe+html,尽可能地就用vue组件的形式,因为要和全局样式挂钩】

后台的代码返回标准的html5文档,在前端定义一个div,使用v-html绚览出来就可以了。

您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

 

非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!

速戳参与调研>>>https://t.csdnimg.cn/Kf0y

你好,我也遇到类似的问题,你这个最后怎么解决的呢?

楼主解决了这个问题了吗,我也遇到了这个问题,好棘手