gwt define-property不会生成新的编译排列

时间:2010-07-03 03:31:19

标签: gwt permutation

我在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(WB)!= - 1 ||(a.indexOf(XB)=! - 1 || a.indexOf(YB)= -1))))){return zb} else {return Ab}}}; t [sb] = {mobile:0,not_mobile:1};

1 个答案:

答案 0 :(得分:0)

如果你这样离开,什么都不会发生。您需要根据您的属性制定延迟绑定规则。因此,对于您的移动浏览器,您可能希望某些接口具有其他实现,而不是桌面浏览器(很可能是与视图相关的接口)。这可以很好地与MVP模式一起使用,您可以根据模块属性选择不同的View实现。