我使用這將在所有組件共享一個單獨的服務,我創建了一個CoreModule,有一個靜態類爲:單服務錯誤上納克建立
static forRoot(config: GlobalServiceConfig): ModuleWithProviders {
return {
ngModule: CoreModule,
providers: [
{ provide: GlobalServiceConfig, useValue: config }
]
};
}
在應用.module.ts
export declare var Globals: GlobalServiceConfig;
export const g = Globals;
全局字典被index.html中創建的,值是從後端到來。 我現在用的這個app.module.ts全局變量,並提供這個初始值CoreModule.forRoot爲:
imports: [
BrowserModule,
SharedModule,
LoginModule,
ShippingModule,
PaymentModule,
CoreModule.forRoot(g),
AppRoutingModule,
],
在第一NG編譯失敗,同樣有NG服務/腕錶但僅限於第一次。如果我做出任何更改,應用程序運行良好,並獲得初始值。但無法構建應用程序。錯誤狀態爲:
遇到錯誤遇到靜態解析符號值。只有 可以引用初始化變量和常量,因爲模板編譯器需要此變量的 值(原始.ts文件中的位置 29:20),解析符號Globals E:/ repos/emtex/mobilepayment/src/app/app.module.ts,在E:/repos/emtex/mobilepayment/src/app/app.module.ts中解析符號g ,解析 符號AppModule在 E:/ repos/emtex/mobilepayment/src /app/app.module.ts,解析符號 E:/repos/emtex/mobilepayment/src/app/app.module.ts中的AppModule, 解析符號AppModule E:/ repos/emtex/mobilepayment/src/app/app.module.ts
納克--version
@angular/cli: 1.0.0
node: 6.9.1
os: win32 x64
@angular/common: 4.0.0
@angular/compiler: 4.0.0
@angular/core: 4.0.0
@angular/forms: 4.0.0
@angular/http: 4.0.0
@angular/platform-browser: 4.0.0
@angular/platform-browser-dynamic: 4.0.0
@angular/router: 4.0.0
@angular/animations: 4.0.0
@angular/cli: 1.0.0
@angular/compiler-cli: 4.0.0
您正在使用哪個版本的Angular? –
@角/ CLI:1.0.0 節點:6.9.1 操作系統:win32的64 @角/共同:4.0.0 @角/編譯器:4.0.0 @角/芯:4.0.0 @angular/forms:4.0.0 @ angular/http:4.0.0 @ angular/platform-browser:4.0.0 @ angular/platform-browser-dynamic:4.0.0 @ angular/router:4.0.0 @角度/動畫:4.0.0 @ angular/cli:1.0.0 @ angular/compiler-cli:4.0。0 –
您的'angular-cli'是一個beta版本(或)rc嗎?其最終版本爲 –