Можно ли сохранить настройки виджета Drive Picker на разных страницах? - PullRequest
0 голосов
/ 19 марта 2019

У меня есть 2 страницы в моем приложении. Страница 1 позволяет пользователю выбрать ученика, а затем приложение показывает страницу 2.

На странице 2 у меня есть виджет Drive Picker, который позволяет пользователю выбирать изображения, которые будут скопированы в определенную папку (зависит от того, что было выбрано на странице 1). Если пользователь закрывает средство выбора на странице 2 после выбора файлов, а затем открывает его снова, не посещая сначала страницу 1, средство выбора устройства запоминает, к какой конкретной папке он обращался, и позволяет ему продолжить.

Если пользователь снова посещает страницу 1, чтобы выбрать другого ученика, а затем возвращается на страницу 2 и использует сборщик, создается впечатление, что сборщик сбрасывается и снова показывает пользователю корень диска. Я хочу избежать такого поведения, чтобы пользователь мог продолжать выбирать файлы с момента их последнего посещения (в том же сеансе) до страницы 2.

Есть ли в любом случае доступ к последней посещенной папке средства выбора и хранилища, которые говорят в свойстве страницы, а затем заставляют средство выбора использовать это свойство при следующем открытии?

Я также немного запутался с параметрами, доступными для виджета, и параметрами, отображаемыми в объекте результата. Признаюсь, я пытался найти переполнение стека для получения дополнительной информации о том, как использовать объект результата, но не могу вспомнить, так что все мои сценарии используют виджет widget.selectedDocuments.

1 Ответ

0 голосов
/ 22 марта 2019

Вы можете использовать sessionStorage () для хранения переменных между страницами. Это функция на стороне клиента, и, насколько я знаю, она не поддерживает «настраиваемые действия», но следующие функции могут это исправить.

function get_ss(name){return sessionStoreage.getItem(name);}
function set_ss(name, val){sessionStorage.setItem(name, val);}

при переходе со страницы 1 вы можете использовать настраиваемое действие, чтобы получить ученика и установить его в sessionStorage, а затем перейти к странице2

"Custom Action=" set_ss("pupil", app.pages.Page1.decendents.PupilName.value); app.showPage(app.pages.Page2); //going from memory on the navigation code

Вы можете добавить "var pupil = get_ss (" pupil ");" оттуда, где тебе это нужно.

...