【发布时间】:2013-03-17 19:23:35
【问题描述】:
在 dojo 1.8 中,我正在创建一些自定义应用程序特定的小部件,并且我希望它们与页面当前主题的样式相匹配。不幸的是,由于我的小部件不是由 Dijit 小部件组成的,因此我无法弄清楚如何实现这一点。
我希望能够根据variables.less 变量创建我的小部件样式;但是,由于我不知道在构建时要使用哪个主题,所以我不知道要使用哪个variables.less 文件。此外,虽然variables.less 文件定义了颜色,但它没有定义主题的其他方面,例如边框半径、间距等。
想到的另一种方法是找到现有的由主题定义的与我想要的近似的 CSS 类,并将它们应用到我的 HTML 中。不过,这似乎是有限的,而且听起来可能很脆弱。
标准小部件似乎通过让每个主题“了解”他们想要显示的每个小部件来处理这个问题。我宁愿不需要修改每个主题,但如果需要,这是一个可以接受的备用方案。
有什么建议吗?
【问题讨论】:
-
您是否尝试使用 dojo 内部使用的 css 类来使其小部件工作/主题化?
-
不,因为我不知道它们是否“稳定”。如果它们是私有的实现细节,它们可能会随着 dijit 包的修改而改变。特别是,我担心 2.0 的变化。但是,如果这些类被认为是公共 API 的一部分,那么它们至少适用于我需要的大部分内容。有什么想法吗?
-
这个我也不知道,我也快要面对这个问题了。
标签: dojo