jQuery に基づくフロントエンド開発システムでは、多くのイベントがさまざまな識別子を介してページにバインドされることがよくあります。イベントプロキシを単純に利用したとしてもイベントが分散してしまい、維持管理が難しくなります。
それでは、この問題をどうやって解決すればいいのでしょうか?そしてバックボーンにある出来事について考えました。以下のように:
つまり、イベントをまとめて収集することであり、イベント処理センターの概念に似ています。
実装アイデアの簡単な概要:
イベント プロキシを使用して、イベントを本体ノードにバインドします。 (イベント自体がバブルしないものもあるので、ここでは当面検討しません)
イベントの実行オブジェクトに統一識別子を与えます。
イベントの実行機能、集中処理。
//イベント処理センター
var ClickEventCenter = {
"handler1": function () {
// 何かをします...
}、
"handler2": function () {
// 何かをします...
}
// ...
}
//イベントバインディング
$body.on("クリック", "[データクリックセンター]", function () {
var handlerName = $(this).data("click-center");
var handler = ClickEventCenter[ハンドラー名]
if ($.isFunction(handler)) handler()
})
この場合、一種のイベントがまとめられています。
ある時点で、それは非常に良い役割を果たすことができます。
以上がこの記事の全内容です。皆さんに気に入っていただければ幸いです。