1
페이지에 추가하는 녹아웃 구성 요소가 있습니다. 내가 만든 뷰 모델의 인스턴스로 ko.applyBindings
을 호출하려고합니다. 그러나 녹아웃은 그것을 무시하고 자체 인스턴스를 만드는 것으로 보인다.녹아웃은 제공된 뷰 모델 인스턴스를 사용하지 않습니다.
코드 :
ko.components.register("my-component", {viewModel: MyViewModel, template: "....."});
ko.applyBindings(new MyViewModel(this.config), document.getElementsByTagName("my-component")[0]);
나는 MyViewModel
의 생성자에 console.log
을하고 난 두 인스턴스가 생성되는 것을보고 오전 : 내가 전달하는 매개 변수를 하나 하나없이. 그리고 녹아웃은없는 것을 사용하는 것 같습니다.
내가 뭘 잘못하고 있니?
이렇게하는 유일한 방법입니까? –
그것은 어느 정도 유일한 길입니다. 아이디어는 이미 뷰 모델을 만든 경우 템플릿 바인딩을 대신 사용할 수 있으므로 구성 요소가 올바른 솔루션이 아닐 수도 있습니다. 기존 인스턴스 전달은 추가 고려 사항으로 추가되었습니다. –