gwt define-property не генерирует новую перестановку компиляции - PullRequest
1 голос
/ 03 июля 2010

Я добавил следующее в myModule.gwt.xml. Я ожидал, что это сгенерирует 6 * 2 перестановок при компиляции. Однако, это все еще только произвело шесть перестановок. Я что-то там пропустил?

<define-property name="mobile.user.agent" values="mobile, not_mobile" />

<property-provider name="mobile.user.agent"><![CDATA[
{
 var ua = window.navigator.userAgent.toLowerCase();
 if ( ( ua.indexOf('android') != -1) || 
   ( ua.indexOf('iphone') != -1) || 
   ( ua.indexOf('midp') != -1) || 
   ( ua.indexOf('opera mobi') != -1) || 
   ( ua.indexOf('opera mini') != -1) || 
   ( ua.indexOf('blackberry') != -1)  )
 { return 'mobile'; }

 else { return 'not_mobile';}
}
 ]]></property-provider>

Я вижу, что файл myModule.nocache.js содержит следующее:

u [sb] = function () {{var a = window.navigator.userAgent.toLowerCase (); if (a.indexOf (tb)! = - 1 || (a.indexOf (ub)! = - 1 || (a.indexOf (VB) = - 1 || (a.indexOf (термометр) = - 1 || (a.indexOf (XB) = -! 1 || a.indexOf (Yb) = -1))))) {return zb} else {return Ab}}}; t [sb] = {mobile: 0, not_mobile: 1};

1 Ответ

0 голосов
/ 03 июля 2010

Если вы оставите это так, ничего не произойдет.Вам необходимо создать правило отложенного связывания, основанное на вашей собственности.Таким образом, для ваших мобильных браузеров вы, вероятно, захотите иметь другие реализации для некоторых интерфейсов, чем для настольных браузеров (скорее всего, интерфейсы, связанные с просмотром).Это может хорошо сочетаться с шаблоном MVP, где вы можете выбирать различные реализации View на основе свойства модуля.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...