如何在 Extjs 的卡片布局上获取当前活动项目的索引号(而不是活动项目的 id)?

发布于 2024-11-10 16:38:10 字数 184 浏览 0 评论 0原文

如何获取卡片布局上当前活动项目的索引号(而不是活动项目的 ID)? 以下代码将返回活动项目的 id:

     Ext.getCmp('my-wizard').getLayout().activeItem.id];

如果我不想为组件项目定义 id 而只想访问活动项目的索引号,该怎么办?

How do I get the currently active item's index number (and not active item's id) on a card layout?
The following code will return active item's id:

     Ext.getCmp('my-wizard').getLayout().activeItem.id];

What if I don't want to define an id for my component items and I just want to access active item's index number?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

忆离笙 2024-11-17 16:38:10

我找不到内置的快速简便的方法,但以下方法可行:

var wiz = Ext.getCmp('my-wizard');
var activeItem = wiz.getLayout().activeItem;
var activeIndex = wiz.items.indexOf(activeItem);

如果这是您经常想做的事情,您可以将其添加到 CardLayout 原型中:

Ext.override(Ext.layout.CardLayout, {
    getActiveIndex: function() {
        return this.container.items.indexOf(this.activeItem);
    }
});

然后您可以使用它:

var activeIndex = Ext.getCmp('my-wizard').getLayout().getActiveIndex();

I couldn't find a built-in quick and easy way, but the following would work:

var wiz = Ext.getCmp('my-wizard');
var activeItem = wiz.getLayout().activeItem;
var activeIndex = wiz.items.indexOf(activeItem);

If this was something that you wanted to do often, you could add it to the CardLayout prototype:

Ext.override(Ext.layout.CardLayout, {
    getActiveIndex: function() {
        return this.container.items.indexOf(this.activeItem);
    }
});

Then you could use it with:

var activeIndex = Ext.getCmp('my-wizard').getLayout().getActiveIndex();
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文