Использовать фильтр angular вне приложения angular
Я хочу форматировать даты на стороне клиента, используя фильтр даты angular. Я хотел бы сделать это, потому что я использую angular в некоторых местах моего приложения, и я хотел бы, чтобы мои даты были отформатированы равномерно во всем приложении.
То, что я пытаюсь сделать, это:
function formatDatetime(date, format) {
var ngDateFilter = angular.getDateFilter(); //that what I'm asking about
return ngDateFilter(date, format);
}
Я использую приложения angular только на нескольких страницах, но даты распространяются на разные страницы (с и без angular).
Ответы
Ответ 1
ОК, как обычно, я нашел ответ. Я сделал:
angular.injector(["ng"]).get("$filter")("date");
и это нормально.
ИЗМЕНИТЬ
Как заметил мез, я мог бы также использовать:
angular.injector(["ng"]).get("dateFilter")
Пример с цифровым фильтром для валюты:
var filter = angular.injector(["ng"]).get("$filter")("number");
$('#Price').val(filter(price));