方法一
string.replace(/\r\n/g,'</br>')
方法二 推荐 使用pre 元素
<div style="white-space: pre;">这是一个 带有换行的文本。</div>或者
<pre>这是一个 带有换行的文本。</pre><style> /* 设置 white-space 样式 */ pre { white-space: pre-wrap; } </style> <div> <pre>{{sqlHtml}}</pre> </div>pre 元素
<pre> 元素可定义预格式化的文本。被包围在 pre 元素中的文本通常会保留空格和换行符。而文本也会呈现为等宽字体。
<pre> 标签的一个常见应用就是用来表示计算机的源代码。
由上述代码可知,在正常的元素中,无论使用多少个空格或换行符,都只会折叠成一个空格;而在pre中,会保留空格和换行符,显示的文本格式和html文件中的文本格式是一致的。
[扩展]:
- 空白折叠:在源代码中的连续空白字符(空格、换行、制表),在页面显示时,会被折叠成为一个空格。而在pre元素中的内容不会出现空白折叠,在pre元素中的内容,会按照源代码格式显示到页面上。
- 显示代码时,通常在外面套一个code元素,code表示代码区域。
white-space解析:
| 值 | 描述 |
|---|---|
| normal | 默认,空白会被浏览器忽略。 |
| pre | 空白会被浏览器保留,其行为类似HTML中的<pre>标签。 |
| nowrap | 文本不会换行,文本会在同一行上继续,知道遇到<br>标签为止。 |
| pre-wrap | 保留空白符序列,但是正常的进行换行。 |
| pre-line | 合并空白符序列,但是保留换行符。 |
| inherit | 规定应该从父元素继承white-space属性的值。 |