如何在GWT中删除注入的CSS资源?

问题描述 投票:1回答:3

我想在GWT应用程序中删除注入的CSSResource。

我使用了以下代码MyClass.INSTANCE.ensureInjected();

我只需要上述CSSResource仅用于特定页面。因此,其余页面应按照实际的CSS /主题工作。

一旦注入,它就适用于整个应用程序。我该如何克服?

gwt uibinder gwt2 clientbundle cssresource
3个回答
6
投票

您可以直接使用StyleInjector实用程序类而不是ensureInjected()方法来注入css捆绑包>

然后,您将获得注入元素的引用,可以在需要时将其删除。

// Equivalent to MyClass.INSTANCE.ensureInjected()
StyleElement e  = StyleInjector.injectStylesheet(MyClass.INSTANCE.css().getText());


// Remove the injected css element
e.removeFromParent();

2
投票

理论上,您可以尝试从DOM中删除注入的样式块,但这将非常困难(并且可能不是很可靠)。


0
投票

如果您在一个以上的页面中嵌入了相同的GWT应用程序,并且希望根据给定的页面进行其他操作,则可以例如调用

© www.soinside.com 2019 - 2024. All rights reserved.