如何实现不同环境的文件路径

How to implement file path for different environments

我正在尝试从这个 tutorial:

实现 ngx-translate

当我 运行 angular 应用程序在本地使用 npm start 时,它工作正常。但是当我想像这样使用自定义子目录时:ng build --output-path angular --base-href=/angular/ 并将其部署到 Apache 服务器上时找不到文件。

文件位于 src\assets\i18n\en.json

我收到多个这样的错误:

message: "Http failure response for http://123.123.123.123/assets/i18n/en.json: 404 Not Found"

幸运的是,我设法使用以下代码解决了这个问题:

export function HttpLoaderFactory(httpClient: HttpClient) {
  return new TranslateHttpLoader(httpClient, '/angular/assets/i18n/', '.json');
}

但是现在当我 运行 在本地使用 ng start 时找不到文件。

您知道在这两种情况下如何解决这个问题吗?

你必须改变相对路径

export function HttpLoaderFactory(httpClient: HttpClient) {
  return new TranslateHttpLoader(httpClient, 'assets/i18n/', '.json');
}