Apabila menyuntik skrip kandungan menggunakan chrome.tabs.executeScript(), seseorang mungkin menghadapi keperluan untuk menghantar parameter kepada skrip. Walau bagaimanapun, adalah penting untuk menjelaskan bahawa "mengirimkan parameter kepada fail" bukanlah konsep yang boleh digunakan.
Sebaliknya, terdapat dua pilihan untuk dipertimbangkan: menetapkan parameter sebelum atau selepas pelaksanaan skrip.
Anda boleh menyuntik skrip kandungan dengan parameter yang dipratentukan dengan menyarangkan panggilan chrome.tabs.executeScript:
<code class="javascript">chrome.tabs.executeScript(tab.id, { code: 'var config = 1;' }, function() { chrome.tabs.executeScript(tab.id, {file: 'content.js'}); });</code>
Untuk parameter kompleks, gunakan JSON.stringify:
<code class="javascript">var config = {somebigobject: 'complicated value'}; chrome.tabs.executeScript(tab.id, { code: 'var config = ' + JSON.stringify(config) }, function() { chrome.tabs.executeScript(tab.id, {file: 'content.js'}); });</code>
Dalam content.js:
<code class="javascript">// content.js alert('Example:' + config);</code>
Parameter juga boleh ditetapkan selepas pelaksanaan skrip menggunakan penghantaran mesej:
<code class="javascript">chrome.tabs.executeScript(tab.id, {file: 'content.js'}, function() { chrome.tabs.sendMessage(tab.id, 'whatever value; String, object, whatever'); });</code>
Dalam content.js:
<code class="javascript">chrome.runtime.onMessage.addListener(function(message, sender, sendResponse) { // Handle message. // In this example, message === 'whatever value; String, object, whatever' });</code>
Atas ialah kandungan terperinci Bagaimanakah cara saya menghantar parameter kepada skrip kandungan yang disuntik dalam sambungan Chrome?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!