美文网首页Vue
vue如何渲染含变量的模板字符串

vue如何渲染含变量的模板字符串

作者: MrHong_bfea | 来源:发表于2021-03-21 13:12 被阅读0次

有个需求是这样的:在富文本里如何套用带有变量的模板字符串。
富文本里的内容都是带标签的模板字符串,但是如果要在富文本里套用带有变量的模板字符串,比如这种:

 `<div>这是图文文章的{{title}}</div><div>这是图文文章的内容{{content}}</div>`

那么我们就可以用Vue构造器extends来解决了

data(){
  return{
        content: '我是内容,很长很长的哦!',
        title: '我是标题哦!'
  }
}
//下面的methods里面的方法,可自行设置到需要用到的地方
_setTemplate() {
  let ele = document.createElement("div");
  ele.setAttribute("id", "pic-point");
  let picTemplate = `<div>这是图文文章的{{title}}</div><div>这是图文文章的内容{{content}}</div>`
  let Profile = Vue.extend({
            template: this.picTemplate,
            data: () => {
              return {
                content: this.content,
                title: this.title
              };
            },
      });
  const lincontent = new Profile().$mount(ele);
  const htmlTemplate = this.nodeToString(lincontent.$el);
  // htmlTemplate就是你想要的东西了,就可以直接赋值到富文本当模板使用了,这个一般是管理端的需求 
},

// 将dom对象转换成str对象
    nodeToString(node) {
      //createElement()返回一个Element对象
      var tmpNode = document.createElement("div");
      //appendChild()  参数Node对象   返回Node对象  Element方法
      //cloneNode()  参数布尔类型  返回Node对象   Element方法
      tmpNode.appendChild(node.cloneNode(true));
      var str = tmpNode.innerHTML;
      tmpNode = node = null; // prevent memory leaks in IE
      return str;
    },

相关文章

  • vue如何渲染含变量的模板字符串

    有个需求是这样的:在富文本里如何套用带有变量的模板字符串。富文本里的内容都是带标签的模板字符串,但是如果要在富文本...

  • 手写Vue2核心(二):模板渲染

    模板渲染 因为vue模板中存在指令,修饰符,循环等,只替换变量是不健全的。因此需要有一套模板渲染,来识别vue模板...

  • Django模板中使用vue.js与vue模板{{}}冲突的问题

    在Django的默认提供的模板中是使用{{}}来渲染变量的,而vue正好也是使用{{}}来渲染变量,想在Djang...

  • vue源码分析复习

    vue渲染页面后,会替换我们的参数 el: '#root'元素 渲染步骤 字符串模板 -> AST AST -> ...

  • 在Vue.js中定义组件模板的七种方式

    vue 至少有7种定义组件模板的方法: 字符串 模板字面量 X-Templates 内联模板 渲染方法(Rende...

  • 学习vue2.0笔记(第三章上)

    模板渲染 vue2.0种,必须使用v-bind将变量渲染到属性中, 列表渲染v-for 也可以使用v-text方法...

  • 2018-07-27(vue)

    Vue 这就创建了一个 VUE 应用! 看起来这跟 渲染一个 字符串模板 非常类似,但是 Vue 做了大量的工...

  • Vue常用模式

    组件定义 SFC 单文件组件 SFC 字符串模板或 ES6 模板字面量 渲染函数 JSX 语法糖 Vue 类组件装...

  • vue综合讲解

    vue2.0和1.0模板渲染的区别 Vue 2.0 中模板渲染与 Vue 1.0 完全不同,1.0 中采用的 Do...

  • es6小结

    模板字符串字符串拼接不需要+,而是用``,变量用${变量名}表示 Tips:模板字符串里的变量的值取模板字符串定义...

网友评论

    本文标题:vue如何渲染含变量的模板字符串

    本文链接:https://www.haomeiwen.com/subject/cblncltx.html