sencha touch :: 动态创建视口面板

发布于 2024-12-29 03:04:29 字数 455 浏览 3 评论 0原文

我有一个 MVC 风格的 sencha 触摸应用程序,通常我用来

Ext.apply(app.views, {
            loginPage: new app.views.Login(),
            mainView: new app.views.MainView(),
            ...
}
Ext.apply(this, {
            items: [
                app.views.loginPage,
                app.views.mainView
...

创建应用程序面板。

但现在我想从一个视口面板开始,动态添加一个新的内容面板,在滑动操作后销毁旧的面板(在本例中为登录面板),以保持 DOM 小而干净。

我怎么能那样做呢?我如何在登录控制器内创建并添加下一个面板,比如说登录成功后。

I have a MVC-styled sencha touch app and normally I used

Ext.apply(app.views, {
            loginPage: new app.views.Login(),
            mainView: new app.views.MainView(),
            ...
}
Ext.apply(this, {
            items: [
                app.views.loginPage,
                app.views.mainView
...

to create the app panels.

but now I want to start with a single viewport panel and add a new content panel dynamically, destroying the old one (in this case the login panel) after the slide action to keep the DOM small and clean.

how could I do that? how could I create and add the next panel lets say after login was successful, inside the logincontroller.

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

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

发布评论

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

评论(1

叫嚣ゝ 2025-01-05 03:04:29

我这样做是

app.views.viewport.setActiveItem(
    app.views.loginPage = new app.views.Login(), {type:'slide',direction:'right'}
}

动态创建新页面!

this.on('cardswitch', function(scp, newCard, oldCard, indx, anim){
    oldCard.destroy();
}

为了在视口内

I did it with

app.views.viewport.setActiveItem(
    app.views.loginPage = new app.views.Login(), {type:'slide',direction:'right'}
}

to create the new page on the fly and

this.on('cardswitch', function(scp, newCard, oldCard, indx, anim){
    oldCard.destroy();
}

inside the Viewport!

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