Angular.js 应用程序无法在 IIS 上运行,但控制台中没有错误

Angular.js application does not work on IIS but there's no errors in the console

我正在尝试将我的 Angular.js SPA 推送到 IIS7 服务器,但遇到了问题。应用程序似乎加载到一半(因为我的视图和模板加载正常),但随后停止运行,如下所示:

如您所见,控制台中没有任何错误...为了更好地衡量,我检查了 Fiddler,它也没有问题:

SPA 在我的本地 Web 服务器上运行完全正常,只有在推送到 IIS 时似乎才会出现问题。如有任何想法,我们将不胜感激!

编辑:

看起来问题是 angular-csp.css 在 运行 grunt build 时没有被正确包含 - 通过将以下内容添加到我的项目 bower.json 文件:

"overrides": {
    "angular": {
      "main": [
        "angular.js",
        "angular-csp.css"
      ]
    }
}

您是否检查过 IIS 服务器上的 Mime 类型?如果 IIS 不知道特定文件类型,它通常会忽略它。

如果您从您要部署到的主机以外的主机请求数据,还要检查您是否启用了 CORS

最后,检查您是否已正确配置 IIS 以使用 HTML5mode(如果您已启用它。请参阅 How to: Configure your server to work with html5Mode

好吧,在以崭新的心态来到这里之后,看来您是正确的——一切正常——除了我的 ng-show 指令。

很明显这是因为 angular-csp.css 在 运行 "grunt build."

时没有被包含

由于它不在 angular bower.json 主要部分中,我需要将以下内容添加到我的项目 bower.json:

"overrides": { "angular": { "main": ["angular.js", angular-csp.css"] } } 

解决了问题。