Javascript 如何转换具有特定标识符的字符串? Input:'text\uuuuu city\uuuuu text\uuuu city\uuuuu' 输出:“文本城市文本城市文本城市”
特征的结果将传递到 这个组件是Javascript 如何转换具有特定标识符的字符串? Input:'text\uuuuu city\uuuuu text\uuuu city\uuuuu' 输出:“文本城市文本城市文本城市”,javascript,reactjs,Javascript,Reactjs,特征的结果将传递到 这个组件是 Input: 'text __city__ text __city__ text __city__' Output: 'text <i>city</i> text <i>city</i> text <i>city</i>' 对于此问题() 我的职能是 <div dangerouslySetInnerHTML={{__html: content.replace(/(?:\r\n|\
Input: 'text __city__ text __city__ text __city__'
Output: 'text <i>city</i> text <i>city</i> text <i>city</i>'
对于此问题()
我的职能是
<div dangerouslySetInnerHTML={{__html: content.replace(/(?:\r\n|\r|\n)/g, '<br />')}}></div>
const transformText=(text)=>{
const tmp=text.split(“”“);
var-res='';
var检查=真;
对于(变量i=0;i
但将页面的其余部分拆分为IE11浏览器。步骤1:转换输入文本 假设输入的格式为
“text\uuuuu city\uuuuuu text\uuuuu city\uuuuuu…text
__城市?
根据您的示例
const transformText = (text) => {
const tmp = text.split('__');
var res = '';
var check = true;
for (var i = 0; i < tmp.length-1; i++){
check = !check;
if (check) {
res += '<i>'+tmp[i]+'</i>';
} else if (tmp[i] != undefined){
res += tmp[i];
}
}
return res;
};
步骤2:在React组件中使用数组
假设变量pairs
包含上述定义的文本/城市对,则以下是组件内部的render
方法(如果它是基于类的)
render(){
返回(
{pairs.map((对,索引)=>{
返回- {pair[0]}{pair[1]}
;
})}
);
}
首先,如果您的原始输入不是HTML,那么将其转换为HTML,然后使用危险的HTML
是一个糟糕的主意。转换输入时,您的第一个目标应该是将其解析为文本/城市对的数组或散列。完成后,您只需迭代该数组并相应地呈现每一对,例如使用
标记,或者在您喜欢的表中。最重要的是,你可以对每一对进行细粒度的、个性化的访问,这样你就可以随心所欲地做任何事情。从API中我得到一个字符串。很抱歉,我只能对您提供的代码进行注释。在这种情况下,正如我在前面的评论中所概述的,您的方法是非常错误的。字符串也可以是“city text city”。它们不是成对的值。已解析的const tmp=quote.title.split(“”“”);{tmp.map((e,key)=>(key%2==1?{e}:e))}@GiGa同样,我只能依靠您提供的示例来确定输入的格式。如果不同,您可以轻松地调整解决方案以适应不同的输入格式(正如您在前面的评论中所做的那样)。这里真正重要的是一般方法,正如你所看到的,这比你最初倾向于直接在单个字符串上操纵和操作要好得多(而且反应也更像),这种方法肯定更好。谢谢Jaxx
const input = "text1 __paris__ text2 __london__ text3 __berlin__";
// the following will turn the input into an array of the form
// [ [text, city], [text, city], ... [text, city] ]
const pairs = input.slice(0, -2).split('__ ').map(pair => pair.split(' __'));
render() {
return (
<ul>
{pairs.map((pair, index) => {
return <li key={index}>{pair[0]} <i>{pair[1]}</i></li>;
})}
</ul>
);
}