Ben*_*ier 9 gwt plugins concept vaadin
在与Vaadin玩了大约一个星期后,我很好奇Vaadin如何使用GWT.GWT将Javacode编译为Javascript.每次重新部署时都必须这样做.
由于Vaadin必须被理解为以服务器为中心的框架,因此消除了编写在Clientside上执行的代码并将所有内容移动到服务器(听起来比实际情况更糟糕)的灵活性,GWT编译器每次只运行一次.例如,当您从vaadin网站导入插件时会发生这种情况.
但它不是那么容易吗?如果它只是将插件的代码编译为javascript,那么以前就可以了.
所以,我的问题是:
VAADIN何时使用GWT编译器,除了编译为js之外,它在那时做了什么?
eeq*_*eeq 14
基本上你是对的,并且大多数自己回答了这个问题.
在Vaadin中,用户界面组件由两部分组成:
这些部分通过HTTP相互通信,并根据需要自动同步其状态.服务器端部分维护用户界面组件的状态,客户端小部件呈现该状态.
应用程序开发人员通常只使用服务器端组件来构建应用程序,而他们实际上并不关心客户端的工作方式.
一般来说,Vaadin的新组件可以通过两种方式开发:
这里的第一个方法使用现有的类,不需要使用GWT重新编译小部件.仅编译应用程序代码(使用JDK编译器).但是,在第二种情况下,客户端类更改并需要重新编译.这是需要GWT编译器的时候.
由于GWT编译的JavaScript具有相当单一的特性(无论GWT的新代码拆分功能如何,命名空间都是全局的)Vaadin使用了widget集的概念.这是一个GWT模块,包含应用程序中所需的所有小部件.这意味着需要向应用程序添加新的(客户端)小部件,以进行GWT重新编译.在删除窗口小部件时重新编译窗口小部件集以优化窗口小部件集大小也是一种很好的做法.
GWT编译步骤本身并不特别.但是,Vaadin本身包含了许多由小部件应用和使用的GWT类的添加,帮助和解决方法.
使用Vaadin附加组件时,所有这些都非常明显(请参阅http://vaadin.com/directory).即使附加组件只是jar文件,如果它们包含新的客户端小部件代码,则在将它们添加到项目时需要使用GWT进行小部件集编译.
归档时间: |
|
查看次数: |
2323 次 |
最近记录: |