2017-08-04 37 views
-1

私はより良いメッセージパッシングを理解するためのテストとして、コンテキストメニューから以下のスクリプトを呼び出しています:chrome.tabs.query()から情報を返すにはどうすればよいですか?

console.log(chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {return tabs[0].id})) 

しかし、これはundefinedを返す呼び出した後、コンソールをチェックし、私はこのようコンソールページからこれを実行しているわけではありませんエラーを返します。

また、以下も実行することundefined返し:

console.log(chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {return "1"})) 

どのような援助が理解されます。

+3

クロームAPIコールバックは非同期であるので、この方法自体は何も返しません。取得した値とconsole.logをコールバック内で使用します。 – wOxxOm

答えて

0

これは以下のように、コールバック内で取得した値を使用することによって修正することができます。

chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {console.log(tabs[0].id)}) 
関連する問題