我有一个看起来像这样的字符串(很多空格,这就是它在我的服务器上出现的方式):
var care_description = "MATERIAL\r\n \r\n 56% Acrylic, 24% Rayon, 20% Polyester\r\n \r\n CARE\r\n \r\n Machine Wash, Gentle Or Delicate"
我正在使用新的Angular 1.2.0
ngBindHtml 并在我的控制器中处理它,如下所示:
$scope.care = $sce.trustAsHtml(care_description);
(该$scope.records[i].accordions
数组只是 Angular-Bootstrap 的 Accordions 模块的包装器)。
当我把它放到我的视图中时(通过一个简单的<p ng-bind-html="care"></p>
),它会呈现如下:
MATERIAL 56% Acrylic, 24% Rayon, 20% Polyester CARE Machine Wash, Gentle Or Delicate
什么时候应该:
MATERIAL
56% Acrylic, 24% Rayon, 20% Polyester
CARE
Machine Wash, Gentle Or Delicate
对我来说,唯一的解决方案是进行正则表达式替换以查找所有实例\r\n
并将其替换为<br />
?
编辑:我应该提到,虽然HTML
上面的示例中没有标签,但通常会有,所以我需要在ngBindHtml
这里使用而不是<pre>
标签。