使用 Yeoman 的新生成后缺少模块 angular-fullstack
Missing modules after fresh generation with Yeoman's angular-fullstack
因此,我使用 TypeScript、MongoDB、Bootstrap、Bootstrap UI、身份验证样板、Twitter 和 [=89 生成了一个新的 angular-fullstack =] OAuth、G运行t、Jasmine、HTML、CSS 和 UI-Router 用于设置。
在我 运行 npm 安装和 bower 安装之后。有一些未满足的依赖项,所以我安装了
- TypeScript,本地
- Mocha,本地
- 本地 Tslint
此外,我在 build 期间遇到错误,已通过安装解决
grunt-babel@5.0.0,本地。
现在,当我 运行 "grunt serve" 一切正常时,除了我在 http://localhost:9000/admin 进入管理页面时。没有用户列表。相反,它说 "The delete user and user index api routes are restricted to users with the 'admin' role." 导航栏上的所有链接都已失效,应用程序标题除外。
当我检查控制台时,出现以下两个错误:
Uncaught Error: [$injector:nomod] Module
'perfectAlgorithmDrillsApp.auth' is not available! You either
misspelled the module name or forgot to load it. If registering a
module ensure that you specify the dependencies as the second
argument.
Uncaught Error: [$injector:nomod] Module
'perfectAlgorithmDrillsApp.admin' is not available! You either
misspelled the module name or forgot to load it. If registering a
module ensure that you specify the dependencies as the second
argument.
我triple-checked。它们没有拼写错误,并且正确地包含在模块依赖项列表中。
由于未加载模块,会出现更多错误。显然,它找不到控制器,因为这些模块没有加载。
此时,我还没有添加或更改任何代码。
我已经尝试了一些方法来解决这个问题:
- 更新 yo 和 angular-fullstack 然后从头开始重新创建项目。
- 将那些 "missing" 模块包装在 IFFE 中。
- 我已将 node.js 更新到最新的 LTS 版本
更多详情:
- 我运行在 OSX El Capitan 10.11.2
上安装所有内容
- 我是 运行ning 节点版本 4.2.6,npm 版本 2.14.12,yeoman 1.6.0
- 在 yo.rc 文件中显示生成器版本为“3.3.0-beta.0”
- 我有mongod 运行ning.
- 我在 WebStorm 中工作,但我没有使用任何内置的东西。都是命令行。
- TypeScript 正在正确编译,因为 .tmp 目录看起来不错。
- 我确定 grunt-cli 已安装。
非常感谢您的帮助。如果您需要更多详细信息,请告诉我。
我也遇到过这个问题。长答案(加上一些您可能还没有或可能永远不会问的问题的其他答案)是 ,但简而言之,将 var module = /\.module\.js$/;
替换为 Gruntfile.js 中的 var module = /[\w/]+.module.ts$/;
.
如果这不起作用,请尝试 here 查看有关此问题的整个讨论帖。
因此,我使用 TypeScript、MongoDB、Bootstrap、Bootstrap UI、身份验证样板、Twitter 和 [=89 生成了一个新的 angular-fullstack =] OAuth、G运行t、Jasmine、HTML、CSS 和 UI-Router 用于设置。
在我 运行 npm 安装和 bower 安装之后。有一些未满足的依赖项,所以我安装了
- TypeScript,本地
- Mocha,本地
- 本地 Tslint
此外,我在 build 期间遇到错误,已通过安装解决 grunt-babel@5.0.0,本地。
现在,当我 运行 "grunt serve" 一切正常时,除了我在 http://localhost:9000/admin 进入管理页面时。没有用户列表。相反,它说 "The delete user and user index api routes are restricted to users with the 'admin' role." 导航栏上的所有链接都已失效,应用程序标题除外。
当我检查控制台时,出现以下两个错误:
Uncaught Error: [$injector:nomod] Module 'perfectAlgorithmDrillsApp.auth' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.
Uncaught Error: [$injector:nomod] Module 'perfectAlgorithmDrillsApp.admin' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.
我triple-checked。它们没有拼写错误,并且正确地包含在模块依赖项列表中。
由于未加载模块,会出现更多错误。显然,它找不到控制器,因为这些模块没有加载。
此时,我还没有添加或更改任何代码。
我已经尝试了一些方法来解决这个问题:
- 更新 yo 和 angular-fullstack 然后从头开始重新创建项目。
- 将那些 "missing" 模块包装在 IFFE 中。
- 我已将 node.js 更新到最新的 LTS 版本
更多详情:
- 我运行在 OSX El Capitan 10.11.2 上安装所有内容
- 我是 运行ning 节点版本 4.2.6,npm 版本 2.14.12,yeoman 1.6.0
- 在 yo.rc 文件中显示生成器版本为“3.3.0-beta.0”
- 我有mongod 运行ning.
- 我在 WebStorm 中工作,但我没有使用任何内置的东西。都是命令行。
- TypeScript 正在正确编译,因为 .tmp 目录看起来不错。
- 我确定 grunt-cli 已安装。
非常感谢您的帮助。如果您需要更多详细信息,请告诉我。
我也遇到过这个问题。长答案(加上一些您可能还没有或可能永远不会问的问题的其他答案)是 var module = /\.module\.js$/;
替换为 Gruntfile.js 中的 var module = /[\w/]+.module.ts$/;
.
如果这不起作用,请尝试 here 查看有关此问题的整个讨论帖。