我试图将日期字符串转换为格式化日期。我找到了3个选项,有人可以帮助我哪个是最佳解决方案?
vm.dateString = "03-06-2015 12:11:00";
1. <div>{{convertToDate(vm.dateString)}}</div>
2. <div>{{vm.dateString | convertDate}}</div>
3. <div convertDate={{vm.dateString}}></div>
someModule.directive('convertDate', function() {
return {
scope: {
convertDate: '@'
},
controller : function($scope) {
function convertToDate (dateString) {
....
return date;
}
$scope.date = convertToDate($scope.converDate);
},
template: '{{date}}'
};
});
答案 0 :(得分:3)
我认为最好的方法是使用过滤器进行此类任务(Angular已经有一个内置日期过滤器。Angular Docs)
因为:
输入=&gt;输出,通过一些操作,过滤器是最好的方法。
为什么不指令?
指令适用于dom操作,它们为您提供了相应的工具。
为什么不是控制器?
控制器有一个控制任务,他们不做这些事情,他们将工作委托给其他人,这是一个存在,另一个,如果你需要,你怎么能在你的项目中使用这个逻辑?