React 使用 i18n 翻译换行解决方法

当前问题:

json 配置文件

"detail": {
    "10001": "Top 10 \nBIGGEST WINS"
}

按以上方式文本在渲染的时候并不能识别我们加入 \n 要实现换行的意图,通过拆分成两个多语来实现又太低级。

解决方法:

在该多语需要渲染的地方加上以下 css,对需要渲染的文本进行空白符、制表符、换行符进行识别。

white-space:pre-line;

同时来学习一下 white-space 相关属性,在css中white-space属性用来控制容器的文本中带有空白符、制表符、换行符等的显示,取值有:

  • normal:默认,忽略文本中所有的空白、换行符;只有文本存在
    或文本达到框的约束时,文本才会换行
  • nowrap:和normal类似,忽略文本中所有的空白、换行符;遇到框的宽度约束时不会自动换行,文本只有在有 br 时才会换行
  • pre:保留文本中的空白、换行符;遇到框的宽度约束时不会自动换行,文本存在
    或文本中有换行符时,文本才会换行
  • pre-wrap:和pre类似,保留文本中的空白、换行符;文本存在
    或文本中有换行符时,或者遇到框的宽度约束时,文本都才会换行
  • pre-line:会略文本中的空白符;文本存在
    或文本中有换行符时,或者遇到框的宽度约束时,文本都才会换行

你可能感兴趣的:(react.js,javascript,前端)