【发布时间】:2018-03-20 14:36:27
【问题描述】:
我正在从我的 Angular 应用程序构建 PWA,当我运行 ng build --prod 时出现以下错误:
ERROR in app\app.module.ts(108,64): Error during template compile of 'AppModule'
Function calls are not supported in decorators but 'Environment' was called in 'environment'
'environment' calls 'Environment'.
但是,这没有任何意义,因为我在课程中添加了export,您可以在此处看到:
environment.prod.ts
import { BaseEnvironment } from './base-environment';
import { ProspectBuilderModel } from '../app/models/prospect';
export class Environment extends BaseEnvironment {
production: boolean = true;
prospectBuilderModel: ProspectBuilderModel = {
buildQuote: false,
buildAcknowledge: false,
buildOrganizationInfo: false,
buildFinancialInfo: false,
buildTradeInfo: false,
buildPermissiblePurpose: false,
buildUserSetup: false,
buildPackageSelection: false,
buildPaymentOptions: false,
buildOrderOptions: false,
buildVerifyOrganizationInfo: false,
buildDocusignAuthorization: false,
buildDocusignContract: false
};
}
export const environment = new Environment();
base-environment.ts
import { ProspectBuilderModel } from '../app/models/prospect';
export abstract class BaseEnvironment {
abstract production: boolean;
abstract prospectBuilderModel: ProspectBuilderModel;
}
app.module.ts
...
],
imports: [
BrowserModule,
AppRoutingModule,
FormsModule,
MultiselectDropdownModule,
ReactiveFormsModule,
HttpModule,
ToastrModule.forRoot(),
BrowserAnimationsModule,
NgxMyDatePickerModule.forRoot(),
PopoverModule.forRoot(),
ModalModule.forRoot(),
ServiceWorkerModule.register('/ngsw-worker.js', { enabled: environment.production })
],
providers: [
...
有谁知道我可以做些什么来解决这个错误?
【问题讨论】:
-
这个错误来自于你试图将一个函数调用到一个装饰器中。如果您需要帮助,请发布调用函数的装饰器,而不是随机代码。
-
很抱歉,但我没有看到我在哪里将函数调用到装饰器中。我上面发布的代码是错误所引用的。
app.module.ts中的ServiceWorkerModule代码行引用了environment.prod.ts,它正在导入BaseEvironment类。这就是我发布所有代码的原因。如果您能告诉我缺少的任何内容,我将不胜感激。 -
好的,那么请尝试使用
ng build --prod --sm=false构建。这应该仍然会弹出一个错误,但可能不是同一个。 -
它返回了同样的错误芽
-
那么,您是否有任何我们可以浏览以查找您的问题的存储库?因为它不是来自您发布的代码,而且您似乎不愿意发布更多代码。
标签: angular typescript progressive-web-apps