我在 Vue 中有一个愚蠢的问题: 我得到一个看起来像这样的对象:
`{ "description": "this ist our List.n Our Service includes:n-1 somethingn-2 something elsen and another thingn"}`
如何过滤掉""和"-1,-2..."并将它们替换为HTM标签,例如
?
我已经尝试了一个函数,它得到一个值,如下所示:
returnList: function(value){
value.replace("n","<br>")
return value`
但它不适用于所有
首先,您应该知道String.prototype.replace
函数返回替换的结果。
let obj = {
"description": "this ist our List.n Our Service includes:n-1 somethingn-2 something elsen and another thingn"
};
console.log(obj.description.replace(/n-[0-9]+/g, "<br>"))
另一种正则表达式方法:/n(-d)?/g
你需要使用正则表达式。像这样:value.replace(//n/g,"<br>")
你应该改变这个:
returnList: function(value){
value.replace("n","<br>")
return value`
}
对此:
returnList: function(value) {
value = value.replace("n","<br>")
return value;
}
Becuase .replace 不会更改值本身,但会返回一个包含更改的新值。
但是,无论如何只会更改第一个值。因此,您可以使用此解决方案value.split("n").join("<br>")
。