如何以不同的颜色显示文本的某些部分,即@和}之间的数据应使用不同的颜色

时间:2019-03-29 07:05:37

标签: javascript reactjs

想要以不同的颜色显示@}之间的数据

示例:@ {data} @ {message}在“一个@ {data}和@ {message} @ {somedata}在“两个@ {somedata}

const data1 = [
      {name: 'one @{data} and @{message}'},
      {name: 'two @{somedata}'},
      {name: 'three @{data}'},
      {name: 'four @{data}'}
];

export default React.createClass({
  render() {
      return (
          <div>
          {data1.map(function(a) {
              return (
                  <p>{a.name}</p>
                )
            })}
          </div>
        )
  }
})

1 个答案:

答案 0 :(得分:-1)

我使用了replace

full code sample : https://codepen.io/yunyong/pen/qveLZL

  <p dangerouslySetInnerHTML={ 
                    {__html:  a.name
                    .replace(/@{/gi, '<span style="color:red">')
                    .replace(/}/gi,'</span>')} 
                  }>
                    </p>