На этой страницеНастройки и данные
Сохранение настроек
Схема описывает значения, API читает и сохраняет их для текущего аккаунта.
Настройки и данные
Для пользовательских параметров используйте settingsSchema и api.settings. Для внутренних записей плагина предназначен отдельный api.storage.
Объявить поля
Добавьте объект в манифест:
{
"settingsSchema": {
"type": "object",
"properties": {
"enabled": { "type": "boolean", "title": "Использовать шаблон", "default": true },
"template": { "type": "string", "title": "Шаблон", "default": "Привет!", "maxLength": 4096 },
"count": { "type": "integer", "title": "Количество", "default": 1, "minimum": 1, "maximum": 10 }
}
}
}
Это фрагмент полного манифеста. Приложение создаёт нативные элементы настроек по типам полей.
Читать значения
const settings = await api.settings.get();
const text = typeof settings.template === "string" ? settings.template : "Привет!";
Сохранять значения
const settings = await api.settings.get();
await api.settings.set({ ...settings, template: "Новый шаблон" });
Передаваемые значения должны соответствовать схеме: типу, диапазону, enum и максимальной длине. Сохраняйте остальные поля при изменении одного параметра.
Разные аккаунты
Настройки относятся к установке и аккаунту. Не переносите значение из одного аккаунта в другой через глобальный объект плагина. Подробнее — несколько аккаунтов.
Что не сохранять
Handles черновиков, сообщений, страниц, изображений и callback ID действуют ограниченное время и не подходят для постоянного хранения. Сохраняйте исходные данные, по которым можно заново создать нужный ресурс.
Внутренние записи без UI-поля храните через storage с соответствующей возможностью.