Question

Mon fond de script:

var collection = Backbone.Collection.extend({});

chrome.extension.onRequest.addListener(function(request, sender, sendResponse) {
  sendResponse(new collection());
}

Dans mon browser_action du 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
  }); 
}); 

Comme mentionné dans le commentaire au-dessus de la "collection" de l'argumentation dans la sendRequest de rappel s'avère à être un habitué de JS tableau, plutôt que de la colonne vertébrale.Collection.

Est-ce un epuration artefact / mesure de sécurité prises par le chrome?Est-il possible de passer d'une colonne vertébrale.La collecte par sendRequest?

Était-ce utile?

La solution

À partir de la onRequest la documentation il est dit que l'argument de sendResponse doit être au format JSON ifiable objet, donc je suis en supposant que la Collection toJSON la méthode est appelée, vous laissant avec seulement les données.

Si vous disposez de la Collection de la définition de la cible de script vous pouvez instancier un nouvel objet avec les mêmes données.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top