嗨我需要指針來了解如何創建封裝角度js過濾器的實用程序模塊,以便我可以將輸入值(2014-11-14T22:51:04.635Z)傳遞給格式化並獲得格式化(ng-filter:2014年11月14日 - 02:51 PM)輸出。目標是利用角度Js過濾器屬性獨立於前端框架。像鬍鬚這樣的框架在HTML中有{{}}標籤,這種角度也有,這可能會導致在html文件中直接使用ng-filters時出現問題。所以我試圖使用ngFilters而不在html中包含它們。所以我們的目標是接受來自模板的值,使用ngFilters將它們格式化爲JS文件並將值推回模板。創建封裝角度js特性的實用程序模塊
2
A
回答
1
您可以方便地調用$過濾器在JavaScript:
var input = '2014-11-14T22:51:04.635Z';
var format = 'd HHH yyyy - h:mm a';
var output = $filter('date')(new Date(input), format);
如果你想改變一個數組,你可以使用.MAP
// You need to get $filter somewhere
var format = 'd HHH yyyy - h:mm a';
var formatDate = $filter('date'); // Save (input.length - 1) function calls
input = ['2014-11-14T22:51:04.635Z', ...]
var output = input.map(function(in) {
return formatDate(new Date(in), format);
});
要了解更多關於角的date
過濾器: https://docs.angularjs.org/api/ng/filter/date
0
我不確定你在做什麼是非常值得的。我在想,如果改變角度的開始和結束的符號可以完全解決您的問題,這樣你就可以直接使用裏面的HTML過濾器:
AngularJS-Twig conflict with double curly braces
有一些情況下,你需要手動調用特定的過濾器在JavaScript。您使用它之前,你可以做到這一點使用$過濾器需要由角注射:
How to use a filter in a controller?
現在我希望你不需要這個還是最好把不正常的角度應用程序使用此,但在極少數情況下,您可能需要在非角度上下文中訪問角度功能(如$ filter)。在這種情況下,你可以使用下列元素訪問$範圍:
var scope = $("path to the DOM element").scope();
現在你可以閱讀和範圍寫入範圍和更好的通話功能。在這種情況下,你需要把你的過濾器的實例的範圍是這樣的:
$scope.filterInstance = $filter;
現在你可以從任何調用此過濾器實例,其中外連角上下文: VAR範圍= $(」範圍();}。 var result = scope.filterInstance(「xyz」);
0
如果你想格式化日期,然後使用http://momentjs.com/
這就是我即使在角框架使用。
1
如果您想在不實際引導AngularJS到您的網絡應用程序的情況下訪問某些AngularJS功能,您可以創建一個獨立的注入器。
var $injector = angular.injector(['ng']);
然後,您可以從它
$filter = $injector.invoke(['$filter', function ($filter) { return $filter; }]);
檢索$filter
服務,並有任何默認AngularJS的過濾器的訪問
var formattedDate = $filter('date')(originalDate, format);
相關問題
- 1. 爲封裝創建屬性
- 2. 角度安裝模塊2
- 3. 帶CLI的角度創建組件提供封裝:ViewEncapsulation.None
- 4. 電子封裝應用程序無法找到模塊sqlite3的
- 5. 在角度js中創建360度產品預覽滑塊
- 6. 將一些有用的js庫封裝到角度模塊的最佳做法是什麼?
- 7. 如何創建JS模塊?
- 8. 如何在現有的應用程序內添加角度js模塊
- 9. 如何封裝python模塊?
- 10. Dnn模塊封裝問題
- 11. 閉合模塊封裝
- 12. 創建獨立節點js應用程序安裝程序
- 13. sugarCRM:使用模塊加載程序創建關係,未安裝程序包
- 14. material.svgAssetsCache注入應用程序模塊 - 角js
- 15. 角度模塊不可用
- 16. 模塊與角度依賴性
- 17. 封裝在JavaScript模塊模式
- 18. 如何使用帶角度模塊的回退js?
- 19. Objective-C的塊夫特封閉翻譯Estimote「實施例」的應用程序
- 20. 的Perl - 封裝/模塊問題
- 21. 用taglib,jsp,JS封裝menuItem?
- 22. 如何在將程序代碼封裝到OOP時創建實例?
- 23. JS函數封裝
- 24. dotnetnuke模塊安裝程序
- 25. Angularjs控制器和模板封裝vs角度組件
- 26. 創建並安裝自己的模塊
- 27. 如何使用SWIG爲C++模板類創建調度封裝類
- 28. JS錯誤與角JS模塊
- 29. 角度JS注射器模塊錯誤,同時使用'angularFileUpload'
- 30. 在模塊中創建一個對象及其實例JS,NODE
我會寫一個JavaScript庫,它執行常見任務並將其用於此目的... – harishr 2014-11-22 07:37:49