最近公司在使用一个开源项目,但是其无法全屏的问题收到公司同事的一致吐槽和内心拒绝。因此,尝试进行源码分析之后进行了魔改,然而在本地通过ng server调试正常的代码,使用ng build打包的程序上传到服务器后,居然出现了404的错误。
搜索Google和百度之后总结如下三点解决方案:
1. 修改app.module.ts文件---来源于百度。(本项目修改后无效)
app.module.ts文件里添加如下代码;
import {HashLocationStrategy,LocationStrategy} from '@angular/common';
然后再providers数组中加入
{
provide:LocationStrategy,
useClass:HashLocationStrategy
},
重新构建项目即可。
2. 修改构建之后的index.html文件
修改index.html中的<base href='/luna/'>,改成<base href='./'>
3. 打包项目时指定参数(推荐)
运行如下命令:
ng build --environment prod --aot --prod --base-href=/luna/ --deploy /luna/
参考文献:angular4.0 配置打包路径以及资源文件404问题
个人博客地址:aikiller.github.io/