Grunt build 似乎不包括 ui-router

Grunt build does not seem to be including ui-router

我已经尝试了几种不同的方法,但我已经使用以下命令安装了 angular-ui-router with bower:

bower install angular-ui-router

太棒了,所以我可以看到我的 bower_components 目录中有一个 angular-ui-router 文件夹。我还可以看到它在 bower.json

中列为依赖项

我像这样在我的项目中包含了路径

<script src="bower_components/angular-ui-router/release/angular-ui-router.min.js"></script>

运行 grunt 服务,一切正常。我的所有 Bower 组件都已加载并且 ui-router 正在路由。

运行 grunt build,build 成功。但是托管该站点,似乎 ui-router 不包括在内。我得到了这个太熟悉的错误

Module 'ui.router' is not available!

在研究了 grunt 配置和其他一些东西之后,我最后的努力是在我的项目中添加一个 CDN 脚本标签

<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.3.1/angular-ui-router.min.js"></script>

但是,在 运行 grunt build.

之后,我得到了与上面相同的错误

包含 ui-router 有什么特别的技巧吗?所有其他凉亭组件似乎都包含在内。

好的,我刚刚看到 ui-router 在 package.json 中没有 'main' 条目。我没有时间戳更多。但是,在 bower.json 文件中。您可以添加 overrides 条目,以便它在打包依赖项中添加文件。

"overrides": {
  "angular-ui-router": {
    "main": [
      "release/angular-ui-router.js"
    ]
  }
}

我不太确定路径。您可以检查您的 angular-ui 文件夹以确保。另外,不要指向缩小的文件,因为 uglify 会 运行 缩小你的文件。