2010-07-03 30 views
1

我在myModule.gwt.xml中添加了以下内容。我预计编译时会产生6 * 2个排列。但是,它仍然只产生了六种排列。我错过了什么吗?gwt define-property不会生成新的编译排列

<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] =函数(){{VAR一个= window.navigator.userAgent.toLowerCase();如果( 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};

回答

0

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