我有以下内容:
<div>{{modal.title}}</div>
有没有办法可以将字符串的长度限制为 20 个字符?
一个更好的问题是,如果字符串...超过 20 个字符,我是否可以更改要截断的字符串并在末尾显示?
...
编辑 最新版本的AngularJS优惠limitTo过滤器。
AngularJS
limitTo
您需要这样的 自定义过滤器 :
angular.module('ng').filter('cut', function () { return function (value, wordwise, max, tail) { if (!value) return ''; max = parseInt(max, 10); if (!max) return value; if (value.length <= max) return value; value = value.substr(0, max); if (wordwise) { var lastspace = value.lastIndexOf(' '); if (lastspace !== -1) { //Also remove . and , so its gives a cleaner result. if (value.charAt(lastspace-1) === '.' || value.charAt(lastspace-1) === ',') { lastspace = lastspace - 1; } value = value.substr(0, lastspace); } } return value + (tail || ' …'); }; });
{{some_text | cut:true:100:' ...'}}
另一个解决方案 :http ://ngmodules.org/modules/angularjs-truncate(@Ehvince)