【发布时间】:2009-11-02 04:39:53
【问题描述】:
在我的 Google Web 工具包应用程序中,我的 gwt.xml 文件在模块中包含以下行:
<module rename-to='foo'>
...
<script src="foo.js"></script>
...
我的问题是:我应该在我的 GWT 项目中实际放置 foo.js 以便在我编译项目时将其打包到战争中?
【问题讨论】:
标签: javascript gwt
在我的 Google Web 工具包应用程序中,我的 gwt.xml 文件在模块中包含以下行:
<module rename-to='foo'>
...
<script src="foo.js"></script>
...
我的问题是:我应该在我的 GWT 项目中实际放置 foo.js 以便在我编译项目时将其打包到战争中?
【问题讨论】:
标签: javascript gwt
把它放在一个公共文件夹中。公用文件夹是与 gwt.xml 文件所在的同一包中的客户端文件夹相邻的文件夹。另见http://code.google.com/webtoolkit/doc/1.6/DevGuideOrganizingProjects.html#DevGuideModules
【讨论】:
src 目录中创建了一个名为public 的文件夹。所以,鉴于我的项目名称是 foo、com.google.sample.foo.client、com.google.sample.foo.server、public 都在 src 文件夹下。我将jquery.js 文件和另一个js 文件foo.js 保存在public 文件夹中。我已将<script src="jquery.js" type='text/javascript'"></script> 和<script src="blur.js" type='text/javascript'"></script> 行添加到gwt.xml 文件中。
HTML 文件夹的head 部分添加了这些行:<script src="jquery.js" type='text/javascript'"></script> 和<script src="blur.js" type='text/javascript'"></script>。 blur.js 包含一个 click 处理程序,用于处理已在 HTML 文件中定义的元素。但是,当我在浏览器页面中单击该元素时,什么也没有发生。我还需要做什么?
com.google.sample.foo.public 还是public 目录下的src 目录下?因为它应该在client 目录旁边?此外,当将其作为脚本添加到 HTML 页面时,您需要将模块名称添加到路径中,因为公共文件位于 modulename 子文件夹中。即:<script src=foo/jquery.js>。或者通过模块 gwt.xml 文件中的脚本标记插入它们:developers.google.com/web-toolkit/doc/1.6/…(在 src 路径中没有模块名称)。
public,与war、src、test同级。我把这两个文件都保存在那里。我不明白你的module 部分,请多解释一下。我现在需要在 XML 和 HTML 文件中做什么才能使这些脚本正常工作?
<module>.gwt.xml所在的目录下,否则GWT找不到。它必须与client 目录处于同一级别。如果你有这个正确的,你会在战争中找到一个带有你的模块名的目录。该目录包含所有 GWT 生成的文件。公共目录中的任何内容也将在该目录中。要从您的 HTML 页面访问它们,请将 src 路径设置为此文件夹,即模块引用。如果您将脚本标签放在 gwt.xml 文件中,GWT 会处理路径,您可以像现在一样在 gwt.xml 中指定 src 标签。