未捕获的ReferenceError:未定义时刻

时间:2015-11-27 08:35:47

标签: javascript jquery asp.net-mvc-5

我正在尝试将moment.jsmoment-jalaali.js插件一起使用。

moment-jalaali是js的插件,增加了对jalaali(太阳)日历的支持。

显然,在网页中,首先应该包括moment.js然后是moment-jalaali.js才能使其正常工作。

我正在做这件事而且它正在给我Uncaught ReferenceError: moment is not defined。 Google Chrome表示它是在第31行引起的 - jalaali.js:

require.modules = {
    moment: { exports: moment } // here the error happens
};

我在nopcommerce(ASP.NET应用程序)中使用这些js库,我在管理区域布局中包含了以下内容:

Html.AppendScriptParts(string.Format("~/Scripts/kendo/{0}/kendo.web.min.js", kendoVersion));
Html.AppendScriptParts("~/Scripts/admin.common.js");
Html.AppendScriptParts("~/Scripts/jquery-migrate-1.2.1.min.js");
Html.AppendScriptParts("~/Scripts/jquery-ui-1.10.3.custom.min.js");
Html.AppendScriptParts("~/Scripts/jquery.validate.unobtrusive.min.js");
Html.AppendScriptParts("~/Scripts/jquery.validate.min.js");
Html.AppendScriptParts("~/Scripts/jquery-1.10.2.min.js");
Html.AppendScriptParts("~/Scripts/moment.js");
Html.AppendScriptParts("~/Scripts/moment-jalaali.js");

即使我将它们包括在其他所有内容之前,它仍然无效。

令人惊讶的是,如果我制作一个如下所示的简单html页面,它们就能完美运行。

<html>
<head>
    <script src="moment.js"></script>
    <script src="moment-jalaali.js"></script>
</head>
<body>
</body>
</html>

导致错误的原因是什么?如何解决?

修改

如果我在查看中包含moment-jalaali.js,但仍然在布局中包含moment.js,则可以正常使用。然而,这不是一个合适的解决方案,所以我仍然在寻找更好的方法。

0 个答案:

没有答案