私はドラッグアンドドロップとajaxのアップロードにpluploadを使用するノックアウトバインディングハンドラを持っています。ノックアウトバインディングハンドラのティアダウン機能?
pluploadスクリプトを使用するには、イベントリスナーをDOM要素にバインドするpluploadのインスタンスを作成します。
これは問題なく動作します。
しかし、私は "フォルダ"のリストを持っています。私がフォルダをクリックすると、そのフォルダ内のファイルのリストを表示します。 foreachを使用してselectedFolder()。documentsをバインドして、同じDOM要素を再利用します。
私の問題は、バインディングハンドラでは、init関数ですべてのpluploadを行い、DOM要素を再利用するため、複数のイベントハンドラがバインドされてしまうことです。これにより、すべてのハンドラにドラッグアンドドロップイベントが送信されます。つまり、レンダリングされたファイルリストにファイルをドロップすると、以前にレンダリングされたすべてのファイルリストに対してもドロップイベントが発生します。
私が探しているのは、バインディングハンドラのティアダウンまたはクリーンアップ機能です。そのため、ファイルリストが未レンダリングされたときはいつでもすべてのイベントを登録解除できます。
アンレンダーリングが検出されないことがありますか?どのように私はこれを処理するだろうか?グローバルインスタンスを持たない方が好きです。これは、同時に複数の場所でバインディングを使用できなくなるためです。
ご迷惑をおかけして申し訳ございません。私は自分の携帯電話のATMにいる。
乾杯!
それは間違いなく私の問題を解決するでしょう。残念だけど、それは解放されていない。ありがとうRP! –
独自のDOM操作(シングルページアプリケーションでは共通)を行う他のライブラリと組み合わされている場合は、以下のjQueryのアプローチを考慮して、ノーマルでトリガされたものだけでなくDOMを削除することもできます。すでにjQueryを参照している場合に便利です。 –