在Angular应用程序之外使用Angular过滤器

13

我想使用 Angular 的日期过滤器在客户端格式化日期。我想这样做,因为我在应用程序的某些地方使用了 Angular,希望我的日期在整个应用程序中格式统一。

我想要做的是:

function formatDatetime(date, format) {
  var ngDateFilter = angular.getDateFilter(); //that's what I'm asking about
  return ngDateFilter(date, format);
}

我只在几个页面上使用Angular应用程序,但是日期分散在各个页面上(有些页面有Angular应用程序,有些页面没有)。

1个回答

17

好的,像往常一样我找到了答案。我做了:

angular.injector(["ng"]).get("$filter")("date");

并且没问题。

编辑

正如meze所观察到的那样,我也可以使用:

angular.injector(["ng"]).get("dateFilter")

使用数字过滤器进行货币格式示例:

var filter = angular.injector(["ng"]).get("$filter")("number");

$('#Price').val(filter(price));

2
我认为你可以使用 angular.injector(["ng"]).get("dateFilter");,但不确定。 - meze
非常感谢 - 这节省了我很多时间! - Andresch Serj
1
谢谢!我会添加一个例子。 - Sebastián Rojas
1
谢谢!这是一个更准确的货币使用方法: - knation

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接