首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AngularJS:如何正确传递moment.js依赖项?

AngularJS:如何正确传递moment.js依赖项?
EN

Stack Overflow用户
提问于 2016-10-17 17:40:28
回答 3查看 17.8K关注 0票数 2

我有一个app.js,在这里我声明了我的应用变量/模块:

代码语言:javascript
复制
var myApp = angular.module('myApp', ['angularMoment']);

然后,我让我的控制器与其他人一起传递引用,并尝试进行moment()调用:

代码语言:javascript
复制
myApp.controller('myComtroller', ['$scope', 'moment', function ($scope, $http, $timeout, moment) {
    var now = moment();
    console.log(now);
}]);

我的控制台出现了一个错误,把它吐了出来:

TypeError:瞬间不是一个函数

我不明白它为什么要这么做。

在我的身体接近尾声的时候,我以这句话为参考:

代码语言:javascript
复制
<script src="~/lib/angular/angular.min.js"></script>
<script src="~/js/moment.js"></script>
<script src="~/lib/angular-moment/angular-moment.min.js"></script>
<script src="~/js/app.js"></script>

按照这个顺序。(控制器稍后执行,这是该视图部分脚本的一部分)

我从这里下载了moment.jshttp://momentjs.com/docs/

但是我通过angular-moment安装了bower依赖项。

有什么建议吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-10-17 18:33:22

在依赖关系注释中缺少一些依赖项。

尝试:

代码语言:javascript
复制
myApp.controller('myComtroller', [
         '$scope','$http', '$timeout', 'moment', 
function ($scope , $http ,  $timeout,   moment) {
    var now = moment();
    console.log(now);
}]);

此外,我建议使用ng-注释自动处理DI注释。

票数 5
EN

Stack Overflow用户

发布于 2021-02-26 00:49:46

看看angular-momentjs.js https://raw.githubusercontent.com/gdi2290/angular-momentjs/master/angular-momentjs.js

加载脚本角动量the

代码语言:javascript
复制
<script type="text/javascript" src="./angular-momentjs.js"></script>

在app模块中注入依赖项角动量,在控制器中注入$moment。

代码语言:javascript
复制
let app = angular.module('myApp', ['angular-momentjs']);
app.controller('myCtrl', function($scope, $moment) {
   let nowISO = $moment().toISOString();
   console.log(nowISO);
});
票数 0
EN

Stack Overflow用户

发布于 2016-10-17 17:53:51

你需要按照正确的顺序传递相关信息,

代码语言:javascript
复制
myApp.controller('myComtroller', [
         '$scope','$http', '$timeout', 'moment', 
function ($scope , $http ,  $timeout,   moment) {
    var now = moment();
    console.log(now);
}]);

您不需要将矩服务作为依赖项传递,只需执行以下操作,

代码语言:javascript
复制
myapp.controller("myComtroller", function($scope) {
$scope.date = moment();       
});

演示

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40092517

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档