在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作为前缀的问题。