5

对于 RTL 语言、阿拉伯语、希伯来语 .. 等,水平翻转 ExtJs 面板的合适方法是什么

4

1 回答 1

10

TL;DR : 自 2013 年 4 月起,Ext 4.2+ 支持 RTL。有关详细信息,请参阅下面的最后更新。

目前 Ext 中没有内置 RTL 支持,尽管许多社区成员已经成功地解决了这个问题。如果您的需求受到限制(例如仅限于面板内容),最好自己简单地覆盖适当的 CSS。如果您需要更完整的 RTL 支持,您可能应该直接在 Ext 论坛中跟进处理相同问题的其他用户。

有一个为 Ext 3.x 添加 RTL 支持的外部项目,虽然我不知道它是否处于活动状态或质量如何(最近一次更新是几个月前)。不过,可能会为您指明正确的方向。

更新:据报道, RTL 支持将在 Ext 4(2011 年第一季度到期)中得到显着改善,如果没有完全实施的话。还没有看到,但这是在 SenchaCon 上报道的。

2012 年 9 月更新:RTL 在 4.1 中还没有正式进入 Ext 4,但最后我听说它仍在路线图上,可能会在以后的 4.x 版本中发布。

2013 年 4 月更新RTL 已登陆。 有关详细信息,请参阅Ext 4.2 介绍博客文章。它的基本要点是要在 4.2+ 中启用 RTL,您需要执行以下操作:

  • 需要Ext.rtl.*命名空间
  • 在你的容器/组件上设置rtl: true配置——注意这个设置级联并且可以被子组件覆盖,这很酷
  • 通过设置 SASS 变量在样式中启用 RTL:$include-rtl: true;

在应用程序组件中启用 RTL 的示例:

Ext.define('MyApp.views.Viewport', {
    extend: 'Ext.container.Viewport',
    requires: [
        'Ext.rtl.*'
    ],
    rtl: true,
    ...
});
于 2009-11-02T05:47:42.487 回答