Javascript 为什么GWT编译需要用户代理规范?
我使用GWT已经有一段时间了。我现在想知道为编译过程指定用户代理的目的是什么。我试图获得一些关于这方面的信息,但到目前为止,我能得到的唯一解释是,这是创建适合浏览器的最终JS。我的问题是,浏览器之间有什么不同,需要明确说明我们计划在哪个浏览器上使用它?因为最终的结果是Javascript。难道JS不应该在所有浏览器上都像实现JS一样工作吗?我能想到的唯一区别是CSS中的差异,在需要的地方有特定于浏览器的CSS属性名。在这种情况下,GWT编译的输出能否不产生一个JS?我错过了什么?如果JS中存在一些差异,那么从事JS、jQuery或Angular等工作的人应该考虑什么Javascript 为什么GWT编译需要用户代理规范?,javascript,gwt,user-agent,Javascript,Gwt,User Agent,我使用GWT已经有一段时间了。我现在想知道为编译过程指定用户代理的目的是什么。我试图获得一些关于这方面的信息,但到目前为止,我能得到的唯一解释是,这是创建适合浏览器的最终JS。我的问题是,浏览器之间有什么不同,需要明确说明我们计划在哪个浏览器上使用它?因为最终的结果是Javascript。难道JS不应该在所有浏览器上都像实现JS一样工作吗?我能想到的唯一区别是CSS中的差异,在需要的地方有特定于浏览器的CSS属性名。在这种情况下,GWT编译的输出能否不产生一个JS?我错过了什么?如果JS中存在一
我已经阅读了gwt文档的这一部分,->.cache.html文件。但我不明白它的确切含义。他们指的是什么问题?GWT应用特定于浏览器的优化。即使浏览器之间的javascript应该相同,尤其是较旧的浏览器也存在差异,这由GWT负责(参见IE中臭名昭著的XMLHTTPRequest与ActiveX以及Canvas与VML) 缓存文件(称为排列)特定于语言和浏览器,因此客户端只能下载所需的代码,而不是一个非常大的文件(使用GWT延迟加载)
有关替换不同浏览器的实现的示例,请参阅(延迟绑定示例)。您所说的“为编译过程指定用户代理”和“明确提及我们计划在哪个浏览器上使用它”是什么意思?@ThomasBroyer,我指的是.gwt.xml属性
,是什么让您认为它是必需的?“你对默认值有什么问题吗?”ThomasBroyer,为没有在问题中正确表达道歉。我的目的不是要了解是否指定user.agent属性,而是要了解生成不同浏览器特定JS/cache文件的原因。我提到这个物业是因为它们是有联系的。不用担心,我只是想澄清这个问题;可能会揭穿你这边的误解和误解(显然不是,这很好)。谢谢@MrTux。通过“优化”,我想你也包括“调整”。据我所知,浏览器之间有很大的差异。如果对任何人都有帮助,请在此处分享更多信息(尽管很旧),以供参考。[链接],[链接]。我想浏览器采用这种方式有其优点和缺点。在任何情况下,像jQuery/Angular JS这样的库也有这个问题吗?如何解决这些问题?有什么想法吗?AngularJS和Polymer(我猜JQuery也使用polyfill)用于较旧的浏览器。它以javascript实现功能,浏览器本身不支持它,大多数是较旧的浏览器。。。