在Angular CLI 8中,URL不再以base href
作为前缀,而是使用了新的解决方案。下面是如何使用新的解决方案的代码示例:
打开src/index.html
文件,删除
标签。
在src/app/app.module.ts
文件中,导入APP_BASE_HREF
和PlatformLocation
模块:
import { APP_BASE_HREF, PlatformLocation } from '@angular/common';
@NgModule
装饰器的providers
数组中,添加以下提供者:providers: [
{
provide: APP_BASE_HREF,
useFactory: getBaseHref,
deps: [PlatformLocation]
}
]
app.module.ts
文件中,添加以下辅助函数:export function getBaseHref(platformLocation: PlatformLocation): string {
return platformLocation.getBaseHrefFromDOM();
}
这些代码将获取基本URL,并将其设置为应用程序的基本路径。
通过执行上述步骤,你就可以成功解决Angular CLI 8中URL不再以base href
作为前缀的问题。