FileSize 使用 ES6 過濾
我們這裡有一個檔案大小過濾器來描述如何將 costum 過濾器新增到現有模組:
let fileSize=function (size,unit,fixedDigit) {
return size.toFixed(fixedDigit) + ' '+unit;
};
let fileSizeFilter=function () {
return function (size) {
if (isNaN(size))
size = 0;
if (size < 1024)
return size + ' octets';
size /= 1024;
if (size < 1024)
return fileSize(size,'Ko',2);
size /= 1024;
if (size < 1024)
return fileSize(size,'Mo',2);
size /= 1024;
if (size < 1024)
return fileSize(size,'Go',2);
size /= 1024;
return fileSize(size,'To',2);
};
};
export default fileSizeFilter;
過濾器呼叫模組:
import fileSizeFilter from 'path...';
let myMainModule =
angular.module('mainApp', [])
.filter('fileSize', fileSizeFilter);
我們稱之為過濾器的 html 程式碼:
<div ng-app="mainApp">
<div>
<input type="text" ng-model="size" />
</div>
<div>
<h3>Output:</h3>
<p>{{size| Filesize}}</p>
</div>
</div>