繁体   English   中英

将HotTowel SPA部署到IIS时不显示默认视图

[英]Default view does not show when deploying HotTowel SPA to IIS

我在VS 2013中使用Angular.js,HotTowel和Breeze创建了一个SPA项目。 它在我的开发计算机上正常工作,但是当我将其部署到运行Windows Server 2012的Web服务器上的IIS 8.0时,它会失败。 该框架已加载,但未加载我的默认视图。 它只是闪烁初始页面并显示一个空的浏览器。

我可以使用开发人员工具浏览js代码,但是它从来不会将默认视图加载到index.html中。

使用IE中的开发人员工具,我在config.route.js中设置断点,以逐步完成确定将哪些页面加载到SPA中的过程。 它似乎提供了正确的页面。 应该加载的页面称为request.html,因此我还在request.js中放置了一个断点,以查看加载是否失败。 它从来没有达到这个断点。

我希望也许有人在将SPA部署到IIS时遇到了这些相同或相似的问题。

感谢您提供的任何帮助。 同时,我将继续搜索。

JG

终于成功了! 如评论中所述,我发现index.html中存在一些路径问题。 我设法通过从shell.html的data-ng-include中删除开头的'\\'来解决此问题。

是:

<div data-ng-include="'/app/layout/shell.html'"></div>

现在:

<div data-ng-include="'app/layout/shell.html'"></div>

这使代码能够找到shell.html的正确目录级别。 我担心这会破坏开发环境的代码,但效果很好。

然后,我发现需要在ccWidgetHeader函数中的directives.js文件中修复类似的路径。 templateUrl必须进行修改。

是:

/app/layout/widgetheader.html

现在:

app/layout/widgetheader.html

最后,我不得不修改style.css以修复标题中徽标图像的路径。

是:

.navbar .brand {
background: url(/content/images/fcma-biostar.png) no-repeat left center !important;
margin-left: -6px;
padding: 35px 50px;

}

现在:

.navbar .brand {
background: url(images/fcma-biostar.png) no-repeat left center !important;
margin-left: -6px;
padding: 35px 50px;

}

非常感谢! 感谢PW Kad和Fop在此问题上的配合!

很好的猜测,当然,黑屏可能是由这里提到的更多原因造成的。 就我而言,我必须在BundleConfig.cs代码中关闭缩小功能:

  BundleTable.EnableOptimizations = false;

(将此作为解决方法考虑。要对其进行修复,绝对值得尝试检查角度代码的依赖项注入部分)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM