我正在尝试编写一个指令,该指令从其子指令的输入构建一个对象并将其推送到作为参数提供的数组中。就像是:
<aggregate-input on="SiteContent.data.objList">
<p aggregate-question>Question text</p>
<input aggregate-answer ng-model="answer" type="text" />
</aggregate-input>
<aggregate-input on="SiteContent.data.objList">
<p aggregate-question>Question text 2</p>
<input aggregate-answer ng-model="answer" type="text" />
</aggregate-input>
我希望收集如下数据:
SiteContent.data.objList === [
{question: 'Quesion text', answer: 'user input'},
{question: 'Quesion text 2', answer: 'user input 2'},
];
- 更新 1:@jrsala 包括范围和 bindToController 语法更改
我无法弄清楚这些指令的通信方式。我期望input
链接中定义的对象将在每个指令的范围内隔离并推送到on
提供的对象。结果是input
对象在所有实例之间共享,并且只有一个对象被推送到数组中。
我猜嵌入的范围规则让我感到困惑,但我真的不知道在哪里。有任何想法吗?谢谢!