Angular-ReferenceError:常量未定义

时间:2019-09-03 13:38:29

标签: angular namespaces electron

我正在重构一个Angular(对Angular 8,Electron 6,Ionic 4 的更新),我想出了一种方法来清理分散在整个项目中的常量。我创建了一个命名空间,在其中根据重用常量的类型放置重用常量

namespace Constants.HTTP {
  export const ACCEPT = 'Accept';
  export const APPLICATION_JSON = 'application/json';
  export const CONTENT_TYPE = 'Content-Type';
  // ...
}

我在VS Code中没有错误/警告,正在运行构建,正在运行ng-serve(JiT和AoT),但是当Electron应用程序启动时,出现以下错误:

enter image description here

BaseEntityService 多次使用命名空间 Constants.HTTP 中的常量。

protected readonly headers: HttpHeaders = new HttpHeaders().set(
  Constants.HTTP.ACCEPT,
  Constants.HTTP.APPLICATION_JSON
);

protected readonly queryRestUrl: string = `${Constants.HTTP.GENERIC_QUERY_REST_URL}/${this.getEntityType()}`;    
protected readonly genericEntityRestUrl: string = `${Constants.HTTP.GENERIC_ENTITY_REST_URL}/${this.getEntityType()}`;

我不确定是什么原因引起的。到目前为止,我在每个Angular项目中都使用过命名空间,但从未遇到过此问题。首先,我认为不导出/导入名称空间可能存在问题,但这有点不合理。知道我应该检查/更改什么吗?

这是package.json中的脚本:

"start": "npm run postinstall:electron && npm-run-all -p ng:serve electron:serve",
"start:aot": "npm run postinstall:electron && npm-run-all -p ng:serve-aot electron:serve",
"build": "npm run postinstall:electron && npm run electron:serve-tsc && ng build --base-href ./",
"build:dev": "npm run build -- -c dev",
"build:prod": "npm run build -- -c production",
"ng:serve": "ng serve",
"ng:serve-aot": "ng serve --aot",

0 个答案:

没有答案