我认为角日期和货币过滤器真的很漂亮,但是我在网上看到一些评论说过滤器会对性能产生负面影响。我正在开发一个企业应用程序,它将处理所有不同类型的日期对象,我们希望根据用户设置呈现不同的格式。
根据我所读到的,直接在DOM中使用过滤器不是最好的方法,所以我想我将它提取到一个服务中。如你所知,angular文档留下了很多需要改进的地方,而且似乎有很多不同的方法来实现这一点。
最后,我只想使用angular内置的日期过滤器来呈现来自不同页面的有效负载的各种日期格式,以格式化该日期。此外,我们对日期和时间都有独立的用户设置。日期格式的选项有:MM/dd/yyyy
和dd/MM/yyyy
。时间格式化选项有:HH:MM:SS
和H:MM:SS A
我倾向于在服务中使用内置的日期过滤器。我认为理想的答案只需要包含一点伪代码就可以了。提前感谢您的时间。
也-请让我知道,如果你需要更多的信息或任何代码。
我第一次尝试就知道我做错了什么。如果有人正在寻找这个主题,下面是代码:
app.service('DateTimeService', ['$filter', function ($filter) {
var self = this
init()
return self
function init () {
self.formatter = $filter('date')
self.formatDate = formatDate
self.formatTime = formatTime
}
function formatDate (time) {
return self.formatter(time, settings.dateFormat)
}
function formatTime (date) {
return self.formatter(date, settings.timeFormat)
}
}])
// in the controller
DateTimeService.formatDate(dateObject)