在Angular中,我需要从包含换行符的文本块中生成一系列段落元素吗?
我可以想到几种方法来做到这一点。但是我想知道是否有一种“官方的” Angular方法,或者在AngularJS上下文中最优雅的方法是什么?
从:
Lorem ipsum dolor坐下来,管教着迷。\ n Sed diam nonummy nibh euismod tincidunt ut laoreet dolore。\ n Magna aliquam erat volutpat。Ut wisi enim ad minim veniam。
至:
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</p> <p>Sed diam nonummy nibh euismod tincidunt ut laoreet dolore.</p> <p>Magna aliquam erat volutpat. Ut wisi enim ad minim veniam.</p>
我可以想到许多方法来做到这一点:
我能想到的最好的解决方案是创建一个过滤器:
angular.module('myApp'). filter('nlToArray', function() { return function(text) { return text.split('\n'); }; });
这需要一段文本并为每个段落创建一个新的数组元素。
然后可以将此数组插入ng-repeat指令:
<p ng-repeat="paragraph in textBlock|nlToArray track by $index">{{paragraph}}</p>