Estensione cromata conversione backbone.js Collezioni per regolare array JavaScript
-
12-12-2019 - |
Domanda
Nel mio script di sfondo:
var collection = Backbone.Collection.extend({});
chrome.extension.onRequest.addListener(function(request, sender, sendResponse) {
sendResponse(new collection());
}
.
Nel mio browser_action è JavaScript:
chrome.tabs.getSelected(null, function(tab) {
chrome.extension.sendRequest({
action: "someAction",
tab: tab
},
function(collection) {
// collection is now a JS array, rather than Backbone.Collection
});
});
.
Come accennato nel commento sopra l'argomento 'Collezione' nella callback SendRequest risulta essere un regolare array JS, piuttosto che backbone.Collection.
È una misurazione di artefatti / sicurezza sanificazione presa dal cromo?C'è un modo per passare una spina dorsale.Collezione tramite SendRequest?
Soluzione
Dal Documentazione onRequest
Dice che l'argomento asendResponse
dovrebbe essere un oggetto JSON-IFACIALE, quindi suppongo che il metodo toJSON
della collezione venga chiamato, lasciandoti con solo i dati.
Se hai la definizione di raccolta nello script di destinazione, è possibile istanziare un nuovo oggetto con gli stessi dati.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow