私はデータ駆動のAngularアプリケーションを持っています。私はトグル状態で渡すトグルコンポーネントを持っています。私の問題は、オブジェクトとしてトグルブール値を渡さない限り、双方向データバインディングが動作しないように見えることです。 をEventEmitterを使用せずに、またはオブジェクトをとして渡すことなく、これを動作させる方法がありますか?これは再利用可能なコンポーネントであり、アプリケーションは非常にデータ駆動型であるため、オプションではなくオブジェクトとして値を渡します。私のコードは、あなたの仕事にAngular2コンポーネント@Input双方向バインディング
<input type="checkbox" [(ngModel)]="toggled" [id]="toggleId" name="check"/>
toggle.component.ts [(toggled)]="..."
については
import { Component, Input, EventEmitter, Output } from '@angular/core';
@Component({
moduleId: module.id,
selector: 'toggle-switch',
templateUrl: 'toggle-switch.component.html',
styleUrls: ['toggle-switch.component.css']
})
export class ToggleSwitchComponent {
@Input() toggleId: string;
@Input() toggled: boolean;
}
parent.component.html
<toggle-switch toggleId="toggle-1" [(toggled)]="nongenericObject.toggled"></toggle-switch>
http://stackoverflow.com/documentation/angular2/8943/angular2-input-output#t=201702021650455443161 –