Как получить полный momentjs api внутри angular вид?
Какой предпочтительный метод получения объекта moment()
внутри представления при использовании angular?
Похоже, что есть этот проект, но он не выглядит хорошо поддержанным.
https://github.com/gdi2290/angular-momentjs
Ответы
Ответ 1
Существует более популярный проект angular -moment... https://github.com/urish/angular-moment
С его помощью вы можете ввести такой момент...
app.controller("ctrl", function($scope, moment) {
$scope.date = new moment();
});
Fiddle
Или, если вам не нужны дополнительные функциональные возможности и директивы, предоставляемые angular -moment, вы можете сделать instantjs инъекционным в своем приложении с помощью angular.value()
или angular.constant()
(angular -moment использует constant()
внутренне для этого)...
app.constant("moment", moment);
app.controller("ctrl", function($scope, moment) {
$scope.date = new moment();
});
Fiddle
Ответ 2
Существует более простое и легкое решение. Вы можете прикрепить его к $window в factory, поэтому вы можете использовать его как зависимость angular.
angular
.module('moment-module', [])
.factory('moment', function ($window) {
return $window.moment;
});
И используйте его как обычно:
app.controller("ctrl", function($scope, moment) {
$scope.date = new moment();
});
Здесь подробно описано о том, как использовать внешние ресурсы в angularjs.
Не забудьте добавить момент в свой index.html