在一个 gwt 项目中,我有一个带有自定义单元格的 CellTree。为了便于测试,我想为每个单元格添加 ID。 我知道我可以这样做:
@Override
public void render(Context context,TreeElement value, SafeHtmlBuilder sb) {
if (value == null) {return;}
sb.appendHtmlConstant("<div id=\""+value.getID()+"\">" +
value.getName()) + "</div>";
}
但我想使用类似于 EnsureDebugID() 的东西,这样我就不必在代码中刻录 ID。有办法吗?
最佳答案
我会在上述两种方法之间做一些事情。您绝对应该添加前缀以确保您可以在测试期间轻松识别单元格,并且您还应该使用 createUniqueId()
方法而不是生成您自己的 UUID,这可能更麻烦。
@Override
public void render(Context context, TreeElement value, SafeHtmlBuilder sb) {
if (value == null) {return;}
String id = Document.get().createUniqueId();
sb.appendHtmlConstant("<div id=\"cell_"+id+"\">" +
value.getName()) + "</div>";
}
关于testing - 如何将唯一 ID 添加到自定义单元格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8123354/