私はクロムエクステンションを見直しています。クロムエクステンションのイベントリスナーを設定する必要がありますか
chrome.tabs.query({active: !0, currentWindow: !0}, function (a) {
chrome.tabs.sendMessage(a[0].id, {action: "process_page"}, function (a) {
})
})
:私は検討しています拡張子で
、私は、メッセージは、コードの以下の行を使用してコンテンツのスクリプトに渡されている「background.js」ファイル内のコードの一部を見ることが
私の最初のクエリは、json-ifiedメッセージがここを通過することです({action: "process_page"})。メッセージのコードベース(process_page)のどこにでも、関連するリスナーイベントを見つけることができませんでした。実際、「process_page」はコードベース全体に1回だけ存在し、background.jsファイルにも存在しているようです。ですから、イベントリスナーがすべてのchrome.tabs.sendMessageメソッドで必須かどうか、またはイベントリスナーがオプションであるかどうかを知りたいと思っていました。
私の2番目のクエリは - Googleのchrome.tabsドキュメント - https://developer.chrome.com/extensions/tabs#type-Tabから、私はsendMessageメソッドの最初のパラメータがタブIDに対応していることを理解しました。しかし、なぜそれが "a [0] .id"として表されたのかを理解したいと思いますか?
明確なポインタまたは説明は本当に役立ちます。
クロム探しは.runtime.onMessage、chrome.runtime.onConnect、および廃止予定の前任者chrome.extension.onRequest。その拡張機能は、内容に関係なくメッセージを処理しているようです。 – wOxxOm
@wOxxOm返信ありがとうございます。 "明らかにその拡張機能はその内容に関係なく任意のメッセージを処理する"。 – mbvee
U hm、それはちょうどそれを意味します。拡張機能は単にメッセージの実際の内容に気を配らず、メッセージが受信されたという事実、メッセージの送信者、またはこのコードが残っていて何もしません。 – wOxxOm