0

我想启动我的一般工作的角度应用程序,但是当我开始使用时刻时,我得到了“时刻”未定义的错误。

从这里使用“角矩”

var app = angular.module("MyApp",
[
    "ngRoute",
    "ui.bootstrap",
    "angularMoment",
    'angular-jwt',
    'angular-storage'
]);

我的 package.json 看起来像这样

{
  "name": "myapp",
  "main": "index.html",
  "toolbar":"true",
  "dependencies": {
    "moment": "*"
  }
}

我正在尝试使用它

app.config(function (moment) {
    moment().format();
});

这说明那一刻是未定义的。

我如何修改我的 package.json 以获取 node-webkit 查找时刻?还是角矩?提前致谢。

4

2 回答 2

2

确保在 HTML 文件中同时加载矩角矩。

按照 angular-moment github 页面上的说明进行操作。我不认为moment().format();是有效的,因为moment不应该是一个函数..

也尝试包含"node-remote": "<local>"在您的 package.json 文件中。

于 2015-05-02T02:13:57.340 回答
0

我遇到了同样的问题,我使用这个代码片段来解决它。您应该将 vendor.js 替换为您自己的文件,例如 angular,moment。

<script>
//hide global object
try {
    window.globalTmp = global;
    global = undefined;
} catch (e) {}
</script>
<script src="vendor.js"></script>
<script>
//recover global object
try {
    global = window.globalTmp;
    window.globalTmp = undefined;
} catch (e) {}
</script>

moment 未定义,因为它被添加globalwindow. global是 node-webkit 的一个对象。如果你输入global控制台,你会global.moment在输出中找到。

我在 moment 的源代码中找到了这个片段,它可以支持我的解释。

var moment,
    VERSION = '2.8.4',
    // the global-scope this is NOT the global object in Node.js
    globalScope = typeof global !== 'undefined' ? global : this,
于 2015-06-24T10:16:02.933 回答