1

子ディレクティブの入力からオブジェクトを構築し、それをパラメーターとして提供される配列にプッシュするディレクティブを作成しようとしています。何かのようなもの:

<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オブジェクトはすべてのインスタンスで共有され、1 つのオブジェクトだけが配列にプッシュされます。

トランスクルージョンされたスコープ ルールが私を混乱させていると思いますが、実際にはどこにあるのかわかりません。何か案は?ありがとう!

4

1 に答える 1