在angular2中将父组件的值传递给ngForm的子组件?

时间:2016-07-06 07:41:08

标签: typescript angular ngrx

我想将父组件()的输入值传递给 child component()。(我尝试使用@input,但它没有工作。我想我犯了一些错误?)

父组件:

<value>
<search [vin]="vin"></search><-- child componnent 
<input class="in" type="text" pInputText [ngFormControl]="finVin" [ng-model]="vin"/>
</value>
class demo{
@Input() private vin:string;
}

子组件:

 <search>
    <div class="lbl">
        {{vin}}

    </div>
    </search>

2 个答案:

答案 0 :(得分:0)

看起来你的方式错了。 子组件中需要@Input注释,因此Angular 2知道您将某些内容传递给它。

因此,请删除父组件中的@Input并将其添加到子组件中:

class search {
    @Input() private vin:string;
}

答案 1 :(得分:0)

注意:[ng-model]已更改为[ngModel]

<value>
   <search [vin]="vin"></search><-- child componnent 
   <input class="in" type="text" pInputText [ngFormControl]="finVin" [ngModel]="vin"/>
</value>

class demo{
   vin="Angular2";
}
<search>
    <div class="lbl">
        {{vin}}

    </div>
</search>


export class search{
     @Input() private vin:string;

     ngOnChanges(...args:any[]){
           //console.log(args[0].vin); //for previous and current value.
      }
}