文字列を省略するカスタムフィルター
最近はテキストを…で省略する場合はCSSが使用されることが多いがCSSでは文字数によって…を省略することはできないため、この場合はフロントエンド側で処理する場合はJavaScriptがいまでも使用される。
使い方
{{test | abbreviate:5}}のようにabbreviateと何文字を超えたときに…で省略するかを指定する。
コード
angular.module('myApp', []) .filter('abbreviate', function () { return function (text, len, end) { if (len === undefined) { // デフォルトは10文字 len = 10; } if (end === undefined) { end = "…"; } if(text !== undefined) { if(text.length > len) { return text.substring(0, len - 1) + end; } else { return text; } } }; });