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?

È stato utile?

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
scroll top