【问题标题】:Failed to instantiate module error in Angular js无法在 Angular js 中实例化模块错误
【发布时间】:2018-02-01 03:34:45
【问题描述】:

我遇到了以下错误,根本原因是 Module 'ngRoute' is not available

未捕获的错误:[$injector:modulerr] 无法实例化模块 一封由于:

错误:[$injector:modulerr] 无法实例化模块 ngRoute 到期 到:

错误:[$injector:nomod] 模块“ngRoute”不可用!你要么 模块名称拼写错误或忘记加载它。如果注册一个 模块确保您将依赖项指定为第二个 论据。”

Javascript 代码:

var amailServices = angular.module('Amail',['ngRoute']);
function emailRouteConfig($routeProvider) {
$routeProvider.
    when('/', {
        controller: ListController,
        templateUrl : 'list.html'}).

    when('/view/:id',{
        controller : DetailsController,
        templateUrl:'detail.html'}).

    otherwise({
        redirectTo:'/'
    });
}
amailServices.config(emailRouteConfig);

如何解决这个问题

【问题讨论】:

  • “您拼错了模块名称或忘记加载它” -- 是吗?
  • @elclanrs 我忘了加载它。谢谢

标签: javascript angularjs


【解决方案1】:

您需要在 HTML 中包含 angular-route.js

<script src="angular-route.js">

http://docs.angularjs.org/api/ngRoute

【讨论】:

  • 从 angularjs 1.1.5 迁移到 1.2 后出现此错误。正如我从另一个页面中发现的那样,这是因为 ngRoute 不再是核心 angularjs 的一部分。因此,您不仅必须在 html(或包)中包含 angular-route.js,还必须在 angular.module() 中注入 ngRoute。
  • 我在尝试使用“ngWebcam”时遇到了同样的错误,我已经将脚本包含在我的 index.html 中并将其注入到我的 angula.module() 中,但我仍然有错误。请帮忙
【解决方案2】:

或者文件的缩小版...

<script src="angular-route.min.js"></script>

有关此here的更多信息:

“当模块由于某些异常而无法加载时会发生此错误。上面的错误消息应该提供额外的上下文。”

“在 AngularJS 1.2.0 及更高版本中,ngRoute 已移至其自己的模块。如果升级到 1.2.x 后出现此错误,请确保已安装 ngRoute。”

列在Angularjs docs 中的Error: $injector:modulerr Module Error 部分下。

【讨论】:

    【解决方案3】:

    对我来说,解决方案是修复语法错误:

    删除 angular.module 函数中不需要的分号

    【讨论】:

      【解决方案4】:

      由于没有将脚本指向正确的路径,我收到此错误。因此,请绝对确保您指向 html 文件中的正确路径。

      【讨论】:

      • 已经三次检查了我的路径,我很确定我做对了。还是报错
      【解决方案5】:

      对我来说,发生错误是因为我的浏览器使用了包含该模块的 js 文件的缓存版本。清除缓存并重新加载页面即可解决问题。

      【讨论】:

        【解决方案6】:

        这样的错误发生在什么时候,

        1. You misspell module name which you injected.
        2. If you missed to include js file of that module.
        

        有时人们会写 js 文件名而不是我们注入的模块名。

        在这些情况下,Angular 会尝试查找方括号 [] 中提供的模块。如果没有找到该模块,则会抛出错误。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-04-13
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多