在我的Angular App中,我想使用环境自动设置<base href="">
。
我的app.module.ts
:
...
import { APP_BASE_HREF } from "@angular/common";
import { environment } from "../environments/environment";
...
...
providers: [
{ provide: APP_BASE_HREF, useValue: environment.baseHref },
...
]
...
以下是我的环境文件:
environment.ts
:
export const environment = {
...,
baseHref: "/app/"
};
environment.prod.ts
:
export const environment = {
...
baseHref: "/"
};
但是,在使用ng build
或ng build --prod
时,这两种配置都不会应用于生成的index.html
。
我的配置:
感谢您抽出宝贵时间!
答案 0 :(得分:1)
因为APP_BASE_HREF
仅与PathLocationStrategy一起使用,所以它不会改变index.html
基础href。您应该使用--base-href
的命令行选项:
ng build --prod --base-href /
从指南中:
某些开发者可能无法添加该元素,可能是因为他们无权访问或使用index.html。
这些开发人员仍然可以通过采取两个补救措施来使用HTML5网址:
- 为路由器提供适当的APP_BASE_HREF值。
- 对所有网络资源使用根网址:CSS,图片,脚本和模板HTML文件。
答案 1 :(得分:0)
您是否尝试过ng build --prod --base-href <path>
?