关于html:AngularJS错误:[ng:areq]参数’MyController’不是函数,未定义

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中使用)