vue 中v-html将原始html渲染为带样式的文本
最近在使用v-html去渲染富文本的时候发现,怎么都渲染不出。
后发现后端为了安全性考虑,将<"、">"、"&"全部进行了转义
这个时候要使用innerText 去渲染出原始html
Vue.prototype.$HtmlUtils = {
/**
* @param {Object} text 转码为html
*/
htmlDecode: function(text) {
var temp = document.createElement("div");
temp.innerHTML = text;
//textContent 火狐不支持innnerText
var output = temp.innerText || temp.textContent;
temp = null;
return output;
}
}
千里之行
始于足下