2017-06-14 17 views
0

Chrome拡張機能で再生を開始しました。Chrome拡張機能 - 結果は常にnullです

私は

chrome.runtime.sendMessage("", function(response){ 
    //some logic 
}); 

を次持ち、background.js

chrome.runtime.onMessage.addListener(function(message, sender, sendResponse) { 
    sendResponse(someFunction); 
    return true; 
}); 

function someFunction(para) { 
    //logic 
} 

に問題がcontent.jsでresponseは常に定義されていない、である私のcontent.jsで

...同様の投稿このサイトでは、通常、ajaxなどの非同期呼び出しが原因ですが、私は非同期的に何もしていませんし、ドキュメントに応じてメソッドを返すtrueを返しています...私のロジックはいくつか後ろ向きであると仮定できますか?

どうしたのですか?

+0

大括弧を削除してください。それはちょうど 'AddToBody parent'です。あるいは、以下のように 'Call'を使用してください:' AddToBody(parent) 'を呼び出してください。 – Rory

答えて

2

応答として機能(「someFunction」)を送信することはできません。応答オブジェクトは直列化可能でなければなりません。

+0

これは回答者です。今、私は分かる。私は関数を返すことはできません...私はコールバックとして応答を使用することを望んでいましたが、これは可能ではないようです。 – MyDaftQuestions

+0

私はあなたのアイデアに従っているかどうかわからない。あなたの関数は既にコールバックしています。なぜあなたはコールバックが必要ですか?メッセージングを使用している理由です –

関連する問題