2

Есть ли способ написать страницу дополнительных параметров в новом API-интерфейсе Firefox WebExtensions?Страница параметров в новом API-интерфейсе Firefox WebExtensions

Например, Google Chrome поддерживает ключ манифеста "options_page" Я искал документацию и вики, но ничего не нашел на этом месте.

+0

Вам нужно объяснить, что вы хотите от «страницы параметров» с точки зрения пользовательского интерфейса/поведения. – Xan

+0

@Xan, страница параметров - это способ, позволяющий пользователям настраивать поведение расширения. Страница параметров может быть объявлена ​​в manifest.json. Самой страницей является html + js, чтобы сохранить параметры аддона. –

+0

И как пользователь откроет/откроет его? (Я хорошо знаю, как это работает в Chrome, но я пытаюсь уговорить вас, какие части вы хотите в FF). – Xan

ответ

3

Этот ответ устарел, поскольку поддержка WebExtension расширяется.

См. Implement a settings page на MDN (и, пожалуйста, пропустите this answer за предоставленную ссылку).


Это не похоже "options_page" манифеста ключ поддерживается как сейчас.

Главное его использование - это обеспечение возможности доступа к пользовательскому интерфейсу на странице параметров; например, ссылку на него в списке расширений.

Если вы переносите существующее расширение, вам нужно добавить другой дополнительный пользовательский интерфейс в расширение, чтобы открыть страницу (например, ссылку во всплывающем окне, если расширение есть). Вы можете просто открыть его с помощью chrome.tabs.create, как будто бы вы открыли любую страницу, и она будет работать одинаково.

Небольшое предостережение: если расширение использует OptionsV2-стилизованный стиль CSS, вам необходимо будет компенсировать его отсутствие.

Еще одна оговорка: функция chrome.runtime.openOptionsPage() недоступна в Firefox и должна быть заменена на shim using chrome.tabs.

2

И «options_page», и «options_ui» будут реализованы в Firefox WebExtensions!

Вот ссылка для отслеживания прогресса http://arewewebextensionsyet.com/#options

+0

Очень полезная ссылка! – Xan

1

Используйте ключ options_ui в вашем manifest.json. Есть хороший путеводитель по MDN о том, как это сделать - Implement a settings page.

Смежные вопросы