2017-10-09 59 views
0

價值我想ngModel的屬性值如下面如何:綁定ngModel的財產在角

//下面的代碼只是爲了解釋我想實現

@Component({ 
    selector: 'app', 
    template: '<input [ngModel]="question.model" />' 
}) 
export class Test{ 
    @Input() bind : {to : {me : 'hello' }} 
    question = {model : 'bind.to.me'} 
} 

的結果是什麼模板應該像

<input [ngModel]="bind.to.me" /> 

回答

0
@Input() bind : {to : {me : 'hello' }}; 

應該

@Input() bind = {to : {me : 'hello' }}; 

否則,您只需指定該屬性的類型爲{to : {me : 'hello' }}而不是該值。

+0

bind是一個輸入,所以理想情況下來自父組件,考慮綁定只是作爲來自父項輸入的佔位符 – user2971336

+0

我不認爲這是可能的。 '{model:{first:'to'},{second:'me'}}''應該可以工作,[ngModel] =「bind [question.model [first]] [question.model [second]]」'''您需要事先知道深度,或者使用使用'let props = bind.to.me.split('。');'的幫助器方法,然後遍歷'bind'來獲取值,將值賦給到一個字段,然後'ngModel'綁定到該字段。 –

+0

會試試看,並在這裏更新 – user2971336