Я хотел бы знать, как правильно обращаться с локальным и синхронизирующим хранилищем в расширении Chrome.Синхронизация синхронизации и локального chrome.storage
Это мой случай:
Я работаю над расширением только для конкретного сайта (на данный момент),
, который содержит контент-скрипт, и всплывающее окно.
Всплывающее окно содержит параметры, в которых пользователь может вносить изменения, а затем значения передаются в контент-скрипт, чтобы отображать изменения на странице.
Я стараюсь как можно меньше экономить и извлекать задачи хранения, и в итоге он будет сохранен в хранилище синхронизации, а не только на локальном.
Хранилище синхронизации имеет ограничение в минуту, а местное - нет.
Я знаю, как слушать всплывающее закрытое сообщение из контент-скрипта с использованием долгоживущего соединения и слушать onConnect
и onDisconnect
, а затем я могу выполнить задачу сохранения, но есть лучший способ сохранить чтение и запись в хранилище?
Все, что я могу думать о том, что у меня есть фоновый скрипт, где я могу хранить изменения в переменных, а затем просто отправлять их обратно и пересылать и из контекстного скрипта и всплывающего окна, так что это похоже на хранение без фактического использования хранилища, но как я могу определить, когда пользователь покидает определенный домен, а затем выполняет одну задачу сохранения, а также закрывает/останавливает сценарий фона/события?
Вы здоровы, спасибо! к сожалению, уже поздно, и я слишком устал прямо сейчас, чтобы читать и понимать, но обязательно обязательно вернусь к нему завтра и сообщит вам об этом :) –
@GilGoldshlager Удивительно, как полно маленьких ловушек эта задача! Я все еще не работал в 100% случаев, но ~ 99.9999999% времени достаточно хорош. Я бы приветствовал конструктивную критику. – Xan
Еще раз спасибо, я закончил тем, что просто сэкономил на всплывающем закрытии события (отсоединение порта), но он может использовать его в ближайшем будущем! –