前端工程师-特殊字符被转义-vue编译


compileTemplate(template, data, style){
        const escapeHtml = (string) => {
            var entityMap = {
                "&" : "&"
            };
            return String(string).replace(/&/g, function (s) {
                return entityMap[s];
            });
        }
      let complieComponent = Vue.extend({
        data() {
          return data
        },
        methods: {
            totalFn(arr, key, digits = 2) {
                let tempArr = arr || []
                let total = 0;
                for(let item of tempArr) {
                total = calculateUtil.numberAdd(total, objectUtil.getValueByPath(item, key), digits)
                }
                return total
            },
            
        },
        template: `<div>${template}</div>`
      });
      var complieComponentDom = new complieComponent().$mount();
      return escapeHtml(style + complieComponentDom.$el.innerHTML); // 在这里转义一遍,因为innerHTML中的字符串中如果有特殊字符会被转义
    }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM