Ich habe eine Funktion, die durch chrome.storage.sync.get
auf einen gespeicherten Wert überprüft und eine CSS-Datei bei Vorhandensein des gespeicherten Werts einfügen.Holen Sie den Rückgabewert von Async-Funktion in Javascript
Ich realisiere chrome.storage.sync.get
ist eine asynchrone Funktion und der Rückgabewert wird nicht wie erwartet an die makeAggressive()
-Funktion übergeben. Wie auch immer, ich weiß nicht, wie ich diesen Code schreiben soll, um das Ergebnis if (result == 'aggressive')
an makeAggressive()
zu übergeben.
Wie kann ich den gespeicherten Wert abrufen, seinen Wert überprüfen und das Ergebnis an die aufrufende Funktion zurückgeben?
chrome.tabs.onUpdated.addListener(function(tabId, info, tab) {
if (info.status == 'complete') applyCSS(tab);
});
function applyCSS(tab) {
var tabUrl = tab.url;
if (makeAggressive()) {
chrome.tabs.insertCSS(tab.id, {
file: "aggressive.css"
});
}
}
function makeAggressive() {
chrome.storage.sync.get(function(items) {
var result = items.intensityLevel;
if (result == 'aggressive') {
return true;
}
});
}
Mögliches Duplikat [? Wie kann ich die Antwort von einem asynchronen Aufruf zurückkehren] (http://stackoverflow.com/questions/14220321/how-do- i-return-the-response-from-async-call) – Makyen