添加到单元格时,模糊类名称不会添加到样式表中

时间:2010-11-29 23:01:40

标签: css gwt

混淆的类名(GPGOA3-B)确实被添加到单元格中,但是类本身没有添加到任何样式表中。

我做错了什么?

public final class HyperlinkCell extends AbstractCell<HyperlinkCellData> {

    // TODO
    private interface MyCss extends CssResource {
        String red();
    }

    // TODO
    private interface MyResources extends ClientBundle {
        @Source("HyperlinkCell.css")
        MyCss css();
    }

    // TODO
    private static MyResources resources = GWT.create(MyResources.class);

    HyperlinkCell() {
        super("click");
    }

    @Override
    public void onBrowserEvent(Element parent, HyperlinkCellData value,
            Object key, NativeEvent event,
            ValueUpdater<HyperlinkCellData> valueUpdater) {
        // handle click event
        History.newItem(value.targetHistoryToken, true);
    }

    @Override
    public void render(HyperlinkCellData value, Object key, SafeHtmlBuilder sb) {
        String childGroupObfuscatedClass = resources.css().red();
        sb.append(SafeHtmlUtils.fromTrustedString("<a class=\""))
                .append(SafeHtmlUtils
                        .fromTrustedString(childGroupObfuscatedClass))
                .append(SafeHtmlUtils.fromTrustedString("\""))
                .append(SafeHtmlUtils.fromTrustedString(" href=\"#"))
                .append(SafeHtmlUtils.fromString(value.targetHistoryToken))
                .append(SafeHtmlUtils.fromTrustedString("\">"))
                .append(SafeHtmlUtils.fromString(value.text))
                .append(SafeHtmlUtils.fromTrustedString("</a>"));
    }
}

HyperlinkCell.css

.red {
    color: red;
}

生成的DOM元素

<a href="#target" class="GPGOA3-B">text</a>

1 个答案:

答案 0 :(得分:1)

MyResources.resources.css().ensureInjected();
  

呼叫   com.google.gwt.dom.client.StyleInjector.injectStylesheet(字符串)   注入的内容   CssResource进入DOM。重复   在一个实例上调用此方法   一个CssResources将没有任何效果。