나는 재사용 가능한 구성 요소를 분리하기 위해 공유 모난 2 모듈을 만들었습니다. 모든 오류 PFB, 미세하지만 AOT를 구축하는 동안 다음 오류가 작동aot를 구축하는 동안 공유 모서리 2 모듈 던져 오류
Error encountered resolving symbol values statically. Calling function 'makeDecorator', function calls are not supported. Consider replacing the function or lambda with a reference to an exported function, resolving symbol Injectable in D:/Shared_Module/node_modules/@angular/core/src/di/metadata.d.ts, resolving symbol OpaqueToken in D:/ Shared_ Module/node_modules/@angular/core/src/di/opaque_token.d.ts, resolving symbol OpaqueToken in D:/Shared_ Module/node_modules/@angular/core/src/di/opaque_token.d.ts
PFB 샘플 코드 및
다음Base_Module
------------------
|
|___module.ts @NgModule
|
|___components
|
|___node_modules
|
|___package.json
|
|___tsconfig.json
Shared_Module
------------------
|
|___module.ts @NgModule
|
|___components -> Shared_Components
|
|___node_modules
|
|___package.json
|
|___tsconfig.json
이 자료 모듈에서 module.ts입니다 코드 구조
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { Shared_Module } from './../../../../SharedModule/module'; --**Including the shared module here**
@NgModule({
declarations: [
],
imports: [
BrowserModule,
FormsModule,
HttpModule,
SharedModule -- **New shared module**
],
exports: [],
bootstrap: []
})
export class Base_Module { }
다음은 공유 모듈의 module.ts입니다.
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
@NgModule({
declarations: [
],
imports: [
BrowserModule,
FormsModule,
HttpModule
],
exports: [Shared_Component],
bootstrap: []
})
export class Shared_Module { }
여기 애플리케이션이 정상적으로 작동되는 tsconfig.json
{
"compilerOptions": {
"target": "es5",
"module": "es2015",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"lib": ["es2015", "dom"],
"noImplicitAny": true,
"suppressImplicitAnyIndexErrors": true
},
"files": [
"src/app/module.ts",
"src/main.ts"
],
"angularCompilerOptions": {
"genDir": "aot",
"skipMetadataEmit" : true
}
}
이다. 컴파일이 잘못되었을 수 있습니다. 모든 도움을 환영합니다. 미리 감사드립니다!
BrowserModule 대신 CommonModule을 입력하면 작동하지 않습니다. – Prats
네, 문제를 해결하지는 못했지만 링크 당 최고 성능의 앱을 사용하는 것이 가장 좋습니다. – chrispy
@chrispy 동일한 오류가 발생하지만 정확한 문제가있는 파일의 위치와 파일을 찾을 수 없습니다. "OpaqueToken은 더 이상 사용되지 않습니다."라고 말했지만 OpaqueToken은 어디서 코드를 찾을 수 있습니까? – mohit