Angular 2 "Error encountered resolving symbol values statically."运行 i18n

标签 angular error-handling compiler-errors internationalization angular2-aot

我正在尝试运行 i18n 提取工具来翻译我的 Angular 2 应用程序。 但是当我尝试运行时,我得到:

Failed on type {"filePath":"C:/ng/anbud/src/app/_common/logging-error handler.ts","name":"LoggingErrorHandler"} with error Error: Error encountered resolving symbol values statically. Could
 not resolve type LoggingErrorHandlerOptions (position 34:53 in the original .ts file), resolving symbol LoggingErrorHandler in C:/ng/anbud/src/app/_common/logging-error-handler.ts
Error: Error encountered resolving symbol values statically. Could not resolve type LoggingErrorHandlerOptions (position 34:53 in the original .ts file), resolving symbol LoggingErrorHandle
r in C:/ng/anbud/src/app/_common/logging-error-handler.ts
    at simplifyInContext (C:\ng\anbud\node_modules\@angular\compiler-cli\src\static_reflector.js:469:23)
    at StaticReflector.simplify (C:\ng\anbud\node_modules\@angular\compiler-cli\src\static_reflector.js:472:22)
    at StaticReflector.parameters (C:\ng\anbud\node_modules\@angular\compiler-cli\src\static_reflector.js:102:47)
    at CompileMetadataResolver.getDependenciesMetadata (C:\ng\anbud\node_modules\@angular\compiler\bundles\compiler.umd.js:14317:56)
    at CompileMetadataResolver.getTypeMetadata (C:\ng\anbud\node_modules\@angular\compiler\bundles\compiler.umd.js:14282:28)
    at CompileMetadataResolver.getProviderMetadata (C:\ng\anbud\node_modules\@angular\compiler\bundles\compiler.umd.js:14473:42)
    at C:\ng\anbud\node_modules\@angular\compiler\bundles\compiler.umd.js:14421:47
    at Array.forEach (native)
    at CompileMetadataResolver.getProvidersMetadata (C:\ng\anbud\node_modules\@angular\compiler\bundles\compiler.umd.js:14405:21)
    at C:\ng\anbud\node_modules\@angular\compiler\bundles\compiler.umd.js:14412:43
Extraction failed

npm ERR! Windows_NT 10.0.10586
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\js\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npm-cli.js" "run" "i18n"
npm ERR! node v6.5.0
npm ERR! npm  v3.10.8
npm ERR! code ELIFECYCLE
npm ERR! beskrivelse@0.1.0 i18n: `ng-xi18n`
npm ERR! Exit status 1

错误在我的自定义错误处理程序中:

// Import the core angular services.
import { ErrorHandler } from '@angular/core';
// import { forwardRef } from '@angular/core';
import { Inject } from '@angular/core';
import { Injectable } from '@angular/core';

// Import the application components and services.
import { ErrorLogService } from './error-log.service';

export interface LoggingErrorHandlerOptions {
  rethrowError: boolean;
  unwrapError: boolean;
}

export var LOGGING_ERROR_HANDLER_OPTIONS: LoggingErrorHandlerOptions = {
  rethrowError: false,
  unwrapError: false
};

@Injectable()
export class LoggingErrorHandler implements ErrorHandler {

  private errorLogService: ErrorLogService;
  private options: LoggingErrorHandlerOptions;

  constructor(
    errorLogService: ErrorLogService,
    @Inject(LOGGING_ERROR_HANDLER_OPTIONS) options: LoggingErrorHandlerOptions <!--- ERROR
  ) {
    this.errorLogService = errorLogService;
    this.options = options;
  }

错误处理程序基于这篇文章: https://www.bennadel.com/blog/3138-creating-a-custom-errorhandler-in-angular-2-rc-6.htm

因此,如果您想完整查看代码,可以在此处查看。

有人知道为什么会抛出这个错误吗?

最佳答案

这里只是一个疯狂的猜测:

改变

export interface LoggingErrorHandlerOptions

export class LoggingErrorHandlerOptions

关于Angular 2 "Error encountered resolving symbol values statically."运行 i18n,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39868408/

相关文章:

Java多维数组程序问题

php - 如何将 angular 2 与 php 和 mysql db 集成

angular - 我可以获得使用 cypress 创建的测试列表吗?

python - django:当出现错误时不要注销 `request.session.set_exipry`

error-handling - 如何从失败错误中检索底层错误?

c# - 可选参数 : compile time constant issue

java - 项目在转换为 Maven 后从所有接口(interface)方法被覆盖的地方抛出错误

Angular 6 HTTP Interceptor 未设置 header

Angular Multi Provider 依赖顺序

c++ - OpenGL 着色器编译错误 : unexpected $undefined at token "<undefined>"