Как я могу сохранить состояние в VS Code WebPanel после его уничтожения? - PullRequest
0 голосов
/ 07 декабря 2018

После просмотра документации я могу сохранить состояние в следующих двух случаях:

  1. Когда скрыто WebviewPanel (т. Е. Пользователь переключаетсявкладки) с использованием getState / setState
  2. Когда пользователь перезапускает код VS путем реализации WebviewPanelSerializer

Однако я не вижу способа сохранения состояниякогда панель разрушена (то есть пользователь закрывает ее или вызывает dispose).Вот мой сценарий:

  1. Я выполняю команду, чтобы показать WebviewPanel
  2. У меня есть поле ввода в содержимом HTML.Я набираю некоторую строку и нажимаю кнопку, чтобы сохранить ее.После сохранения я сохраняю его, используя setState, а затем добавляю div с введенным текстом в веб-просмотр.
  3. Я закрываю панель и снова выполняю команду.К панели не добавлено div.

1 Ответ

0 голосов
/ 08 декабря 2018

У вас есть 2 варианта:

  1. Воссоздать дополнительный div, когда вы найдете сохраненное состояние (например, ввод от пользователя).
  2. Используйте retainContextWhenHidden, чтобы сохранить содержимоевеб-просмотр, даже если он перемещен в фоновый режим.

Последнее не поможет, когда пользователь закрыл веб-просмотр, и гораздо более ресурсоемко, чем операция сохранения / восстановления состояния.

...