gpt4 book ai didi

css - Gwt Css 和 uibinder no-obfuscation 不工作

转载 作者:行者123 更新时间:2023-11-28 07:12:14 25 4
gpt4 key购买 nike

我有一个带有配置属性的 Gwt 小部件库:

<set-configuration-property name="CssResource.style" value="stable-notype"/>

预计将保留原始 css 名称,然后是 css 文件(示例)

.invader {
width: 400px;
height: 400px;
background-color: #DBDBDB;
}

.invader .button {
background-image: url('merged.png');
width: 64px;
height: 64px;
background-position: 0px 64px;
background-color: #BA6622;
}

之后生成一个css资源

interface WidgetStyle extends CssResource {
String button();
String invader();
}

当我在 WidgetStyle 实例上调用 ensureInjected() 时(和/或)以编程方式/在 ui:binder 中使用样式,例如

<ui:style src="WidgetStyle.css" field="style" />
<g:HTMLPanel styleName="{style.invader}" ui:field="panel" />

然后,在浏览器中的结果 html 文件中,我得到了四个定义的选择器,而不是一个注入(inject)的 css 样式:

.org-invader-widget-client-WidgetStyle-invader;
.org-invader-widget-client-WidgetStyle-invader .org-invader-widget-client-WidgetStyle-button;
.org-invader-widget-client-MyWidget_UIImpl_GenCss_style-invader;
.org-invader-widget-client-MyWidget_UIImpl_GenCss_style-invader .org-invader-widget-client-MyWidget_UIImpl_GenCss_style-button;

这些对重复上面的样式,只是名称不同。我看到第二对作为“MyWidget 拥有”样式出现,但是我如何强制所有应用程序仅使用我在 .css 文件中定义的那些 css 类而不进行任何混淆?

此外,第二对css-classess未能正确应用。仅应用第一个,第二个不匹配。

我这里做错了什么?

最佳答案

好的,我发现用

访问 css
<ui:style ... />

注入(inject)样式和 css 类可能会获得额外的前缀,对我来说正确的方法是通过 ClientBundle 访问样式

<ui:with ... >

混淆覆盖在 *.gwt.xml 中的 SuperDevMode 中“默认”不起作用,如果我是对的,它必须使用 DevMode 运行参数进行配置。

关于css - Gwt Css 和 uibinder no-obfuscation 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32571385/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com