AngularJS Error: [ng:areq] Argument 'MyController' is not a function, got undefined
我在AngularJS错误中出错了:[ng:areq]当尝试使用bundles时,参数"mycontroller"不是函数,而是未定义的。但是,当我使用脚本标记将应用程序明确地包含在HTML中时,它是有效的。捆绑配置cs
1 2 3 4 5 | bundles.Add(new ScriptBundle("~/bundles/myweb") .IncludeDirectory("~/Scripts/myweb","*.js") .IncludeDirectory("~/Scripts/myweb/Controllers","*.js") .Include("~/Scripts/myweb/Controllers/myController.js") .Include("~/Scripts/myweb/myweb.js")); |
使用此HTML不起作用:
1 2 3 4 | <script src="~/Scripts/angular.js"> @Styles.Render("~/Content/css") @Scripts.Render("~/bundles/modernizr") @Scripts.Render("~/bundles/myweb") |
这个HTML确实有效,但我不确定为什么我必须显式地包含myapp.js,因为它已经包含在包中(当我从F12查看包时,Google Chrome上的开发者工具已经包含了预期的代码):
1 2 3 4 5 | <script src="~/Scripts/angular.js"> @Styles.Render("~/Content/css") @Scripts.Render("~/bundles/modernizr") @Scripts.Render("~/bundles/myweb") <script src="~/Scripts/myweb/myweb.js"> |
注意,所显示的HTML位于u layout.cshtml的头部。我在MVC中使用AngularJS。
刚刚知道如何解决这个问题。
我基本上需要包括以下代码
1 2 | <script src="~/Scripts/angular.js"> @Scripts.Render("~/bundles/myweb") |
在layout.cshtml和index.cshtml中(我只在index.cshtml中使用)