如何向自定义单元格添加唯一ID?

Cro*_*roo 6 testing gwt cell

在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>"; 
}
Run Code Online (Sandbox Code Playgroud)

但我想使用类似于EnsureDebugID()的东西,所以我不必在代码中刻录ID.有没有办法做到这一点?

Chr*_*ell 2

我会在上述两种方法之间做一些事情。您绝对应该添加一个前缀,以确保您可以在测试期间轻松识别单元格,并且您还应该采用该方法,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>"; 
}
Run Code Online (Sandbox Code Playgroud)