2017-03-08 57 views
0

我有這樣的代碼:NG-模型 - 綁定動態字段對象

<div ng-repeat="c in q.children | orderBy:[]"> 

     <div ng-if="c.kind == 'text'"> 
     <label> 
      {{c.value}} 
      <textarea ng-model="q.newResponse.value['{{c._id}}']"></textarea> 
     </label> 
     </div> 

    // ... 

我所試圖做的是綁定在newReponse.value,其中該屬性是動態的,是c._id值的屬性,所以是這樣的:

newResponse.value.44PkfeoakfoAf5o3r3773oZS3a = 'foo bar baz'; 

這不作爲是工作,我得到這個錯誤:

Error: [$parse:syntax] Syntax Error: Token '{' invalid key at column 22 of the expression [q.newResponse.value[{{c._id}}]] starting at [{c._id}}]]. 
http://errors.angularjs.org/1.6.1/$parse/syntax?p0=%7B&p1=invalid%20key&p2=22&p3=q.newResponse.value%5B%7B%7Bc._id%7D%7D%5D&p4=%7Bc._id%7D%7D%5D 
    at angular.js:68 
    at AST.throwError (angular.js:14893) 
    at AST.object (angular.js:14882) 

有沒有人知道這是否可能,以及正確的方法是什麼?感謝

回答

0

沒關係,這不是那麼難 -

 <div ng-if="c.kind == 'text'"> 
     <label> 
      {{c.value}} 
      <textarea ng-model="q.newResponse.value[c._id]"></textarea> 
     </label> 
     </div>