У меня возникает небольшая проблема при создании нового объекта на странице параметров.Потеря ссылки:
На странице параметров параметров я создаю несколько объектов и сохраняю их как общие настройки. Эти объекты имеют способ связи с различными API. Но как только я получаю один из этих объектов для работы, я теряю контекст на странице.
Например:
страница параметров создать объект, который имеет метод «запрос», и я отправить AJAX запрос к некоторому ИПН с помощью этого метода. Когда я вызываю это на другой странице, запрос ajax регистрируется на странице параметров. Когда я закрываю страницу параметров, я теряю весь контекст журналов, которые он делает.
Есть ли способ принудительно ссылаться на текущую страницу? или я сделал ошибку при создании объектов на неправильных страницах/сохранении их и извлечении их на нужную им страницу? (IE я должен только сохранить данные мне нужно создавать объекты на самой странице? (Который, кажется, как много накладных расходов для той же самой вещи (?)).
Заранее спасибо.
EDIT
У меня есть страница с параметрами, которая создает объект, который позволяет называть его MyApi. Я создаю новый MyApi и сохраняю его в chrome.storage.local. Когда пользователь имеет какой-то текст и нажимает на контекстное меню, я открываю новый (selectedText.html), который отображает выделенный текст и некоторые вызовы API, которые являются в основном аякс-запросами. В тот момент, когда я получаю объект из хранилища в selectedText.html и делаю любой запрос с помощью My Api Я не вижу никаких журналов на вкладке сети для запросов ajax, ни в каких консольных журналах. Но, открыв страницу опций, я вижу все там.
EDIT2
save : function()
{
var obj = {'api':this.data};
chrome.storage.local.set(obj,function() { if(chrome.runtime.lastError) console.warn(chrome.runtime.lastError); });
}
Это в фоновом скрипте.
Не совсем понятно, что вы пытаетесь достичь, но очевидно, что контекст страницы параметров не подходит для этой цели. Вы изучали ** chrome.storage **? – gkalpak
Я создаю объекты и сохраняю их в chrome.storage. но когда любые методы, называемые им, не имеют консоли для входа в журнал. – John
Всегда есть консоль (конечно, вы должны ее открыть). То, что вы имеете в виду, неясно. Попробуйте опубликовать код и более подробное объяснение того, что происходит на каждом шаге. – gkalpak