在 GWT 中需要应用程序范围的 CSS 常量

2024-02-21

我想在 GWT CssResource 中将一些颜色定义为常量,并在整个应用程序中使用这些常量;但我不知道该怎么做。

我会告诉你我已经尝试过什么。我创建了一个 ClientBundle 和一个 CssResource,如下所示:

public interface Resources extends ClientBundle {
  public interface MyStyle extends CssResource {
    String JUNGLEGREEN();
    String example();
    ...
  }
  @Source("Resources.css")
  MyStyle css();
}

我定义了一些常量 http://code.google.com/webtoolkit/doc/latest/DevGuideClientBundle.html#Constants在资源.css 中:

@def JUNGLEGREEN #1F3D0A;

在 Resources.css 中,我使用这些常量,如下所示:

.example { color:JUNGLEGREEN; }

我不知道如何在其他 CSS 文件和 UiBinder 模板中重用这些常量。我想在其他一些 UiBinder 文件中执行此操作,例如 LoginView.ui.xml:

<ui:with field='resources' type='com.example.Resources' />
<ui:style>
  .mainPanel {
    background:{resources.css.JUNGLEGREEN};
    ...
  }
</ui:style>

...但它似乎无法编译。你知道我怎样才能实现我的目标吗?


这是我们的做法:

  • 我们把所有的常量属性放在一个constant.css file
@def black #241b15;   /* text color */
@def orange #ff4f00;   /* links */
  • 在每个 ui.xml 文件中,您可以通过以下方式引用这些常量:
<ui:style src="../../resources/css/constants.css">
    .myStyle {
        color: orange;
    }
</ui:style>

希望有帮助。

EDIT:

为了避免相对路径<ui:style>元素,您可以执行以下操作:

  • 在 css 文件中再次定义常量(例如constants.css)
@def junglegreen #1f3d0a;
  • 创建一个ClientBundle and CssResource检索定义的常量
public interface MyResources extends ClientBundle {

    public static final MyResources INSTANCE = GWT.create(MyResources.class);

    public interface Constants extends CssResource {

        String junglegreen();
    }

    Constants constants();
}

-使用@eval注释来访问常量

<ui:style>
    @eval green com.gwt.client.widget.test.MyResources.INSTANCE.constants().junglegreen();

    .someClass {
        color: green;
    }
</ui:style>

我知道如何在不引用 css 文件本身的情况下处理常量的唯一方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 GWT 中需要应用程序范围的 CSS 常量 的相关文章

  • GWT SafeHTML、XSS 和最佳实践

    OWASP 的优秀人员强调 您必须对 HTML 文档中要放入不受信任数据的部分 正文 属性 JavaScript CSS 或 URL 使用转义语法 看OWASP XSS https www owasp org index php XSS 2
  • GWT、Maven、Spring - 在 Maven 构建上获取 com.thoughtworks.qdox.parser.ParseException:语法错误

    我正在尝试集成此演示中的代码 http code google com p gwt spring starter app http code google com p gwt spring starter app 进入我的主要 Spring
  • GWT 2.3 开发模式 - 托管模式 JSP 编译似乎不使用 java 1.5 兼容性

    无法编译 JSP 类 生成的 servlet 错误 DefaultMessage 上次更新 0 日期 中 0 时间 HH mm ss z 语法 错误 注释仅在源级别为 1 5 时可用 在尝试以开发模式在 Web 浏览器中打开我的 gwt 模
  • 在 GWT 中,在任何主机页标记上添加事件处理程序

    我想为任何标签添加 MouseOver 事件处理程序 举个例子 我想为旧版 HTML 页面中的每个锚点页面添加事件处理程序 继GWT指南 http code google com webtoolkit doc 1 6 DevGuideUse
  • GWT/JAVA 未捕获的异常转义

    我的代码有问题 但似乎无法修复它 我想在提交按钮时将一些客户数据添加到 java GWT 中的数组列表中 我从中添加数据的表单 ok addClickHandler new ClickHandler public void onClick
  • 如何创建开发/调试和生产设置

    我最近无意中部署了我们的游戏typrX的调试版本 打字比赛在www typrx com http www typrx com 尝试一下 很有趣 它很快就被纠正了 但我知道它可能会再次发生 挖完后 在 Google 上 我找到了一些如何创建
  • 如何使用CellTable进行单行扩展?

    我正在尝试使用新的 GWT CellTable 小部件 但我的表格需要支持单行扩展 即行的左侧有一个 zippy 单击它时 该行应该扩展以提供更多详细信息 并且该行应该跨越所有列 是否可以使用 CellTable 来实现此目的 如何动态添加
  • 使用 Guava Ordering 对对象列表进行多条件排序

    我有一个类无法实现可比较 但需要根据 2 个字段进行排序 我怎样才能用番石榴实现这一目标 假设班级是 class X String stringValue java util Date dateValue 我有一个清单 List
  • 如何使用 GWT 以编程方式禁用 html 缓存

    有没有办法使用 GWT 禁用浏览器中 html 页面的缓存 我宁愿避免在 html 页面的标题中使用插入 META HTTP EQUIV EXPIRES CONTENT 而是以编程方式执行 如果可能的话 如果这对于 GWT JavaScri
  • GWT CellTable getRowElement 抛出 IndexOutOfBoundsException

    我在 GWT 中使用 CellTable 并尝试在发生某些事件时向行添加样式 添加样式的代码如下 Range range playlistTable getVisibleRange int start range getStart for
  • GWT 中什么是可序列化的或不可序列化的?

    我的 GWT 项目中有这个简单的对象 我无法通过电汇发送它 在这样的类中放置构造函数是不可能的吗 public class MceDto implements IsSerializable public MceDto String uri
  • 如何自动将 gwt.codesvr 附加到页面 URL

    在托管模式下运行 GWT 应用程序时 通常需要在查询字符串参数中添加代码服务器的位置 例如 而不是index html可能需要打开index html gwt codesvr 127 0 0 1 9997 问题是gwt codesvr通常不
  • GWT 的 RPC 与 AJAX 不同吗?

    与 AJAX 调用相比 GWT Google Web Toolkit 的 RPC 远程过程调用 用于从浏览器 javascript 到服务器的异步操作有何不同或相似 如果它们不同 有人可以帮助我理解它们有何不同吗 我还听说这个 RPC 实现
  • 为什么在 GWT(或任何 Web 应用程序)中使用命令模式?

    根据这个视频 7 50 Google 建议在其请求处理 API 之上使用命令模式 还有一个看起来很有帮助的项目gwt 调度 http code google com p gwt dispatch 实现该模式 根据 gwt 调度我需要为每个命
  • GWT:在 SplitLayoutPanel 中执行 onResize() 时如何获取新大小?

    我有一个 SplitLayoutPanel 其中子组件之一是 FlowPanel 我扩展了 FlowPanel 以创建一个实现 ProvidesResize 和 RequiresResize 的 ResizableFlowPanel 因为
  • 为什么使用 GWT.create() 而不是 new?

    有什么区别GWT create SomeClass class and new SomeClass 为什么你会使用其中一种而不是另一种 GWT createGWT 编译器使用延迟绑定 延迟绑定是 GWT 编译器的一项功能 它的工作原理是在编
  • 带有 -noserver 的 GWT

    我正在制作一个使用 PHP 连接到 DB2 数据库的 GWT 项目 当我编译项目并将其部署到服务器 复制 WAR 目录的内容 时 它工作正常 显然在托管模式下我遇到了 SOP 问题 因为 GWT 在端口 8888 上 而 php 脚本在端口
  • 使用 GIN 注入 Class

    有没有办法注入类类型Class
  • GWT 在开发模式下运行缓慢

    我在开发模式下使用最新的 GWT 2 0 版本的 Eclipse Galileo 但它运行速度非常慢 我需要等待大约一分钟才能打开一个页面 但编译后 当我使用 Tomcat 5 5 运行它时 我的应用程序运行得很好 我的代码不太重 我猜有一
  • 通过实体中的列表对象化查询过滤器包含搜索参数

    在应用程序中 我有一个实体 其中包含其他实体的列表 假设一个事件包含分配的员工列表 使用 objectify 我需要找到分配给特定员工的所有事件 如果查询包含参数 是否有一种基本方法来过滤查询 与中的查询相反 快速伪代码 findAll E

随机推荐

  • 如何获取夏令时的开始和结束日期?

    我正在尝试获取 Android 中夏令时的转换日期 这是特定时区夏令时开始和结束的日期 我怎么做 无法直接执行此操作 但您可以使用 TimeZone isDaylightTime Date 如下所示 TimeZone tz TimeZone
  • AOL 的开发者 API 密钥问题

    我正在使用 AOL 登录创建一个新应用程序 为此 我需要开发人员 api 密钥 我获取了 Facebook twitter 的 api 密钥 但对于 aol com 当我打开 dev aol com 时 它总是重定向到 www aol co
  • 通过 ajax 刷新数据时覆盖表单“重置”行为

    我依靠表单的 重置 行为来取消编辑 我面临的问题是 一旦发布数据通过ajax更新 重置仍然会恢复到最初随页面加载的数据 所以基本上我需要做的是 重置 重置 功能 合理 尝试这个 yourForm bind reset function re
  • 如何比较两个具有非连续顺序的随机数的文件?

    有 2 个名为 compare 1 txt 和 compare2 txt 的文件 其中包含非连续顺序的随机数 猫比较1 txt 57 11 13 3 889 014 91 猫比较2 txt 003 889 13 14 57 12 90 Ai
  • 如何在不使用边框的情况下更改 a 标签的下划线粗细?

    我经常对按钮使用 a 标签 因此它们有一个填充 使它们像按钮一样 如何更改文本装饰下划线的粗细 人们经常建议为此使用边框底部 但是 底部边框不是下划线 有些字母甚至延伸到下划线以下 下划线比某物下面的线复杂得多 正如所解释的 我已经使用了相
  • 如何将 .NET 库移动到子目录?

    我想将我的应用程序使用的所有库 dll 放入一个子目录 假设名为 lib 如何指示程序集加载器在该特定目录 这是主程序集所在的目录的子目录 中查找引用的程序集 我认为应该通过 app config 中的一些设置来完成 对吗 探测路径 htt
  • 哈希表中关键内容的最佳实践

    最好的查找结构是HashTable 它提供持续的访问一般 最坏情况下呈线性 这取决于哈希函数 好的 我的问题如下 假设一个良好的实施HashTable e g HashMap关于映射中传递的键是否有最佳实践 我的意思是建议键必须是不可变的对
  • 为什么这个从未来列表到未来列表的转换能够编译并起作用?

    免责声明 下面的代码片段与正在进行的 Coursera 课程之一相关 我们假设它只是出于学习目的而发布 不应用于作为家庭作业的解决方案提交 正如下面的评论所述 我们需要将 Future 列表转换为列表的单个 Future 更重要的是 如果至
  • 如果条件唯一,MySQL 的非重复计数

    我正在尝试构建一个查询 告诉我给定数据集中有多少个不同的女性和男性 该人通过号码 电话 来识别 同一个 tel 可以出现多次 但该 tel 的性别只能计算一次 7136609221 男7136609222 男7136609223 女7136
  • 具有多个组的导航视图根据条件隐藏和显示组

    I have NavigationView具有多个组 基于某些条件我需要隐藏和显示组 我怎样才能实现这个目标 我的样品NavigationView menu menu menu
  • 我该如何修改这个SQL语句呢?

    我的 SQL Server 视图 SELECT geo HyperLinks CatID geo Tags Tag geo HyperLinks HyperLinksID FROM geo HyperLinks LEFT OUTER JOI
  • 快速 cookie 返回未定义

    我试图在express js 上设置cookie 但它返回未定义 我搜索了很多网页并把express cookieParser above app use app router 但它仍然无法返回正确的值 app js app configu
  • 平滑画布动画

    我正在尝试学习如何使用 HTML5 的画布创建流畅的 JavaScript 动画 由于某种原因 动画并不流畅 而是有点 溅射 你可以看到我构建的框架这个jsFiddle http jsfiddle net 3TAVu 目前仅使用 Webki
  • C++ 模板“延迟实例化”

    C 模板中的 延迟实例化 是什么意思 延迟实例化是指直到第一次使用相应实体时才实例化模板 例如 您有一个模板化函数 template
  • javascript创建多维数组语法[重复]

    这个问题在这里已经有答案了 今天我听说可以使用以下语法在 js 中创建多维数组 var a new Array 3 3 a 2 2 2 alert a 2 2 然而这在歌剧中不起作用 我有什么地方说错了吗 是的 你有地方错了 var a n
  • git 存储库在 Linux 中从 jenkins 连接时出现 403 错误

    嗨 我只想将我的项目从 github 配置到 jenkins 来生成 build gradle 文件 我收到以下错误 Failed to connect to repository Command usr bin git ls remote
  • 如何在IPython中自动设置默认路径

    我使用 WingIDE 进行开发 使用 Ipython 运行脚本 我在几个方面面临一些不便 每当我更新代码时 我都必须重新加载模块才能在 IPython 中更新它 为了解决我遵循的问题绳文杉 https stackoverflow com
  • 如何从 jenkins 构建 Visual Studio 安装程序项目(.vdproj)以生成 .exe 和 .msi 文件?

    我有一个 Visual Studio 安装程序项目 vdproj 我想从 jenkins 构建它 有人可以为我提供解决方案吗 我尝试使用 msbuild 但它不适合我 然后我在批处理文件中尝试了以下操作 devenv exe pathToP
  • AngularUI:为什么模态没有作为指令实现?

    我在我的项目中使用 Angular ui 我想实现一个模式窗口 库的大部分组件 http angular ui github io bootstrap http angular ui github io bootstrap 作为指令实现 如
  • 在 GWT 中需要应用程序范围的 CSS 常量

    我想在 GWT CssResource 中将一些颜色定义为常量 并在整个应用程序中使用这些常量 但我不知道该怎么做 我会告诉你我已经尝试过什么 我创建了一个 ClientBundle 和一个 CssResource 如下所示 public