我在ASP.NET项目的子文件夹中有一个Angular 2应用程序,并希望使用How to bundle an Angular app for production
中的技术捆绑Angular 2应用程序建议的方法是使用Angular CLI设置项目。但是我在使用这种方法时遇到了一些麻烦,因为它对项目结构做了一些假设。
假设Angular 2应用程序位于子文件夹/Angular2App/
中,Angular CLI似乎希望index.html
位于/Angular2App/src/
中,并且当捆绑结果位于{ {1}}以及该文件夹/Angular2App/dist/
中的所有引用都假定捆绑包位于index.html
。
但是我只想在/
获得Angular 2应用程序。
关于如何以这种方式配置Angular CLI的任何想法?
答案 0 :(得分:3)
在构建角度应用程序时应设置deployUrl
,然后所有路径变量都将具有前缀/Angular2App/
。例如;
ng build --deployUrl "/Angular2App/"
答案 1 :(得分:1)
使用base-href
标志设置除root之外的基本URL。
ng build --base-href=/Angular2App/
来自Angular docs:
如果将文件复制到服务器子文件夹中,请附加构建标志, --base-href并正确设置。
例如,如果index.html位于/my/app/index.html上的服务器上, 将基础href设置为这样。
ng build --base-href = / my / app /
您将看到已在生成的内容中正确设置 DIST / index.html中。