0

ng-repeat を使用して入力された div のコンテンツを記録しようとしています。これは、特定の時点でその div のスナップショットを取得するようなもので、データを保持するためにさらにコードを記述する必要がありません。

リンク: 関数 (スコープ、要素、属性) { scope.game = game;

            var $element = $(element),
            $clone = $element.children().clone();

            scope.$watch('someVariable',function(array){
                if (array[array.length - 1] === scope.id){
                    record($compile($clone)(scope));
                    console.log($compile($clone)(scope));
                }
            },true);

        }

私はこのようなコードのバリエーションを試してきましたが、うまくいきませんでした.ng-repeatによって生成されたdivのコンテンツをディープコピーすることはできませんでした.

特定の時点で div の動的に生成されたコンテンツを正確にコピーする方法について何か提案はありますか?

4

1 に答える 1

1

ng-repeat で提示するデータがある場合、モデルに既にデータがある場合は、そのデータのスナップショットをスコープ内の他のオブジェクトに保存するだけです。DOM に直接アクセスしようとするのではなく、コントローラでデータを操作する必要があります。これは angularjs では大したことではありません。次に、再利用する Div が必要な場合は、モデルに保存したスナップショットを表示する方法を知っているディレクティブを作成します。

于 2013-03-28T08:27:05.080 に答える