2017-02-21 2 views
0

최신 Angular2 Webpack Starter (v5.4.1/각도 2.4.6)을 사용하여 AoT 컴파일러로 코드를 작성하려고합니다. 사용자 정의 형 입력 컴포넌트에서 I는이이 host bindingAoT 컴파일에서 Angular2 호스트 바인딩 문제

@Component({ 
    selector: 'my-selector', 
    templateUrl: 'mycustominput.component.html', 
    host: {'(input-blur)': 'onInputBlur($event:any)'}, 
    providers: [INPUT_VALUE_ACCESSOR] 
}) 

npm run build:aot:prod와 빌드 실행이 메시지

[at-loader] Checking finished with 2 errors 
Error in bail mode: [at-loader] compiled/src/app/views/mycustominput.component.ngfactory.ts:142:35 
TS2346: Supplied parameters do not match any signature of call target. 

ngfactory의 각 선 (142)이있다 함께 실패

141 if ((eventName == 'input-blur')) { 
142 const pd_sub_0:any = ((<any>this.context.onInputBlur($event)) !== false); 
143 result = (pd_sub_0 && result); 
144 } 

분명히 그것은 호스트 바인딩과 관련이 있습니다. JIT 컴파일 된 dev 빌드에서이 코드는 문제가되지 않습니다. 어떤 아이디어가 이것을 고치는 방법?

답변

0

오, 내 잘못입니다. 이제 AoT가 불평하는 내 구성 요소의 콜백 메소드에 누락 된 event 매개 변수입니다.

public onInputBlur(event) {...} 

public onInputBlur() {...} 

변경

관련 문제