Сброс всего приложения Flex - все поля формы и другие пользовательские данные (без URLRequest / Javascript) - PullRequest
0 голосов
/ 22 января 2011

Каковы лучшие практики для сброса многопользовательских приложений Flex? Со сбросом я имею в виду:

  • Сброс всех полей формы и других данных, оставленных пользователем в приложении во время его сеанса
  • Сброс всех таблиц данных и других компонентов, содержащих конкретные данные

... когда пользователь выходит из приложения.

Мне известны подходы к перезагрузке URL с помощью navigateToURL или с использованием Javascript. Но мне не нравятся эти подходы. Главным образом потому, что все приложение должно быть загружено снова, что стоит его времени и немного грубо для простого сброса данных.

Есть ли хорошие альтернативные подходы, которые не требуют перезагрузки URL?

Ответы [ 2 ]

2 голосов
/ 22 января 2011

Напишите метод для установки вашего приложения в состояние по умолчанию; что бы это ни было. Запустите это как часть процедуры выхода из системы.

Если вы ищете какой-то автоматический способ сделать это, я не могу придумать один. Как человек, пишущий такой «автоматический» алгоритм, узнает, какими будут ваши значения по умолчанию?

1 голос
/ 23 января 2011

Во-первых, @ www.Flextras.com прав ... состояние "по умолчанию" определяется вами, разработчиком приложения. Если вы не хотите перезагружать приложение, чтобы начать все сначала, вам нужно знать, что значит очистить все поля. Он абсолютно прав и получает + 1.

При этом я могу добавить еще несколько идей для мозгового штурма. Вы всегда можете написать процедуру, которая перемещается по визуальному дереву, используя рекурсивные функции, такие как getElement и numElements. Вы можете сделать что-то вроде предположения, что все TextInputs и TextAreas должны быть очищены и очистить их, когда вы найдете их в дереве. Вы даже можете зайти так далеко, создав файлы конфигурации, в которых перечислены поля по имени в дереве и значения по умолчанию. Затем вы можете пройтись по дереву, найти элементы по имени и установить для них значения по умолчанию, определенные в вашей конфигурации.

НО, вам все еще нужно знать, как выглядит состояние по умолчанию и что нужно очистить. С точки зрения Flex свойство - это свойство. TextInput.text не более особенный, чем BorderContainer.backgroundAlpha. Если бы существовала такая вещь, чтобы установить все на «по умолчанию», то ваше приложение рухнуло бы само по себе. Итак, выясните, что значит быть «по умолчанию» или «сбросить» в вашем приложении. Как-то инкапсулируйте это определение, чтобы оно не попало в ваш код, и примените выбранный вами алгоритм очистки.

...