0

jQueryMeteorを使用して、次のようにTokenInputプラグインを DOMにバインドしようとしています。

$(function(){
     console.log("binding tokeninput");
     $(".nameInput").tokenInput(friendsList.data)
});

問題は、特定の DOM 要素が時々再描画される (DOM から削除され、すぐに再追加される) ことです。その入力に対してプラグインが常に有効であることを確認する必要があります。

いくつかのことが思い浮かびます:

  • Meteor からのコールバックを使用して、更新するたびに再適用できますか? テンプレート オブジェクトが更新されたときの Meteor からのコールバックが見つかりません。
  • ある種のリアクティブ バインドを使用できますか (.on はイベント専用ですが、.on など)?
  • 私はこれを完全に間違っていますか?
4

1 に答える 1

1

DOM要素がリアクティブなものによって削除されている場合。mytiem変更された場合、「レンダリングされた」テンプレート コールバックが発生します。

例えば

<template name="MeteorIsAwesome">
    {{#each myitem}}
        <div class="dom element meteor">

        </div>
    {{/each}}

    {{!comment - you can put it here or above}}
    <input class="nameInput" type="text">
</template>

Js (探しているコールバックの種類)

Template.MeteorIsAwesome.rendered = function () {
    $(".nameInput").tokenInput(friendsList.data)
}

私が心配しているのは、再描画時にトークンボックスの状態を無視して、二重にトークン化される可能性があることです

于 2013-03-07T00:37:59.937 に答える