AngularJS:换行符到段落元素
在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>
我可以想到许多方法来做到这一点:
- 修改控制器中的文本(尽管我更喜欢避免修改模型)
- 使用指令,并在链接函数中生成段落(似乎过于繁琐)。
- 使用过滤器(我当前的最爱)创建一个数组,以管道传输到ng-repeat
回答:
我能想到的最好的解决方案是创建一个过滤器:
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>
以上是 AngularJS:换行符到段落元素 的全部内容, 来源链接: utcz.com/qa/414404.html