GWT MVP с деятельностью и местами - «глобальные» ссылки? - PullRequest
0 голосов
/ 05 ноября 2010

Я немного запутался с примером GWT MVP с действиями и местами .Это первый раз, когда я подхожу к такой схеме проектирования.Мне удалось реализовать это в моем проекте, и, к моему удивлению, это действительно работает.История работает, события запускаются нормально и т. Д.

Поскольку я точно следую примеру, мои докладчики являются одноразовыми действиями, которые создаются каждый раз, когда пользователь перемещается, а представления хранятся в ClientFactory.Все отделено и очищено.

Теперь я не могу обернуть голову вокруг следующего: В моем приложении пользователь может выбрать глобальную опцию в любое время: Это вызывает событие, которое уведомляет current Активность (что желательно).Теперь я чувствую себя немного глупо, но как я могу передать объект глобального параметра действиям, созданным после возникновения события?

В этом примере конструкторы действий получают параметр Place, который может толькоудерживайте простые строки (объект глобальных опций не является stringyfiable) и clientFactory.Прямо сейчас я помещаю глобальные параметры в ClientFactory, но это должно быть ( или кажется ) неправильным.Должен ли я поместить его в AppActivityMapper, который создает объекты Activity?Я что-то упускаю здесь?

1 Ответ

1 голос
/ 06 апреля 2011

вы столкнулись с проблемой, описанной в другом месте в Переполнении стека ( GWT MVP с местами и действиями - где модель? ) - демонстрационная программа "Действия и места" не охватывает компонент модели MVP.

Хотя это кажется неправильным, я рекомендую сохранить этот экземпляр данных модели в вашей ClientFactory, или пусть ваш ClientFactory предоставит метод getModel ().Возвращаемая модель данных может включать ваш глобальный параметр.

Альтернативные стратегии, представленные в вышеприведенной статье, предназначены для того, чтобы ваши «одноразовые» действия фактически получали постоянный Presenter из ClientFactory, или чтобы ваша Activity получала модель данных при создании..

...