Тип объекта теряется при передаче сообщения
Я работаю над расширением Chrome, и у меня есть следующая проблема.
Когда происходит определенное событие, моя фоновая Страница создает новую вкладку (страницу) с chrome.tabs.create
API и отправляет объект.
Вот какой код:
// in background.html
chrome.tabs.create({index: 0, url: "results.html"}, function(tab) {
chrome.tabs.sendRequest(tab.id, {'items': itemsList}, function(response) {
console.log(response.farewall);
});
});
С другой стороны, на вновь созданной странице Я получаю отправленные объекты
// newpage.html
chrome.extension.onRequest.addListener(
function(request, sender, sendResponse) {
console.dir(request.items);
sendResponse({});
}
);
Проблема в том, что, когда я получаю список объектов, в newpage.html
, Тип объекта теряется. Действительно, используя console.dir()
в новом background page
, тип объектов в itemsList правильно сообщается, но не в полученном объекте списка элементов в newpage.html
.
background.html
вручную через строку и вручную де-сериализовать в newpage.html
, но я хотел бы знать, есть ли лучший способ позволить себе это и предотвратить потерю типа объектов (а именно элемента) в списке.