You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AngularJS创建组件报错:模块myApp不可用([$injector:modulerr])

解决AngularJS [$injector:modulerr] / [$injector:nomod] 错误的思路

这个错误本质是Angular找不到你的myApp模块,我帮你梳理几个最常见的排查和解决方向:

  • 先确认模块定义的语法是否正确
    AngularJS创建模块时,必须传递第二个参数(依赖数组,空数组也可以),比如:

    // 正确:创建新模块,即使没有依赖也要传[]
    angular.module('myApp', []);
    

    如果你写成angular.module('myApp'),这是获取已存在的模块,如果模块还没创建,就会触发这个错误。

  • 检查脚本加载顺序
    一定要先加载AngularJS的核心库,再加载你自己的业务脚本。如果你的自定义脚本在Angular之前加载,代码里的angular对象还不存在,自然没法创建myApp模块。

  • 核对模块名称的拼写一致性
    所有用到myApp的地方(比如HTML里的ng-app="myApp",或者控制器、组件挂载模块时),拼写、大小写必须完全一致。Angular对模块名称是区分大小写的,哪怕多一个空格都不行。

  • 组件注册要挂载到正确模块
    如果你是在AngularJS 1.5+中创建组件,要确保组件是注册在已定义的myApp模块上,比如:

    angular.module('myApp')
      .component('myComponent', {
        template: '<p>我的组件</p>'
      });
    

    不要单独创建新模块或者挂载到错误的模块上。

内容的提问来源于stack exchange,提问作者david

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 07:05:31