2017-02-14 23 views
1

Команда. Мы реализовали одностраничное приложение, в котором мы сохраняем некоторые данные в корневой области для доступа на других страницах приложения. Все нормально работает в нормальном потоке. Мы столкнулись с проблемой обновления браузера. Когда пользователь на одной из наших страниц приложения, если пользователь обновляет страницу, целые данные теряются из корневой области. Мы старались не обновлять. Но мы обнаружили, что это невозможно и даже невозможно добавить пользовательское сообщение, чтобы уведомить пользователя. Теперь мы просто выгружаем пользователя, когда он обновляет страницу, что неудобно для пользователя, и что наше приложение не нуждается в такой безопасности. Итак, мы собираемся добавить данные об объеме всей корневой области в локальное хранилище при обновлении страницы, и после перезагрузки страницы мы снова загрузим все данные из данных локального/сеансового хранения в корневую область. Мы должны сделать это в одном месте. Таким образом, нам не нужно реализовывать это на отдельной странице модуля. Есть ли способ достичь этого. Может ли кто-нибудь предложить, если у вас есть альтернативный способ.Хранить данные о корневой области в локальном/сеансовом хранилище браузера и загружать после перезагрузки страницы

ответ

0

Помните, что в локальном хранилище HTML5 имеется 800kb-10mb в зависимости от браузера. Я слышал, что у Safari 99 idk. 5mb в последней версии Google Chrome (2/14/17).

Во всяком случае, вы можете создать локальное хранилище с помощью stringifying в формате JSON:

localStorage.setItem('myDataStorage', JSON.stringify(myData)); 

Затем извлеките их

var myRetrievedData = JSON.parse(localStorage.getItem('myDataStorage')); 

myDataStorage это имя вашего созданного LocalStorage. Вы можете использовать разные имена для создания нескольких локальных хранилищ, если хотите, просто помните, что каждый из них ограничен только размером. Не ждите, чтобы сохранить HD изображения намного меньше видео с помощью HTML локального хранения

Это делается, ваши полученные данные теперь можно управлять с помощью кода, используя переменную myRetrievedData (или любой другой переменной имя вы хотите)

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

  • Нет связанных вопросов^_^