Sencha 基础Demo测试,三种showView的方法

直接贴代码吧

Ext.define("build.controller.MainController",{
    extend:"Ext.app.Controller",
    config:{
        refs:{
            mainDataview:"main dataview",
            createAdd:"createAdd"
        },
        control:{
            "mainDataview":{
                itemtap:function(data,index,item,record,event){
                    //测试三种展示View的方法................
                    console.log(record)
                    switch (record.data.id){
                        case "1":
                            console.log(1111)
                            /*第一种方式*/
                            var c1=Ext.create("build.view.CreateAdd");
                            Ext.Viewport.add(c1);
                            Ext.Viewport.setActiveItem(c1);
                            break;
                        case "2":
                            console.log(2222)
                            /*第二种方式,这种方式和case3这种show的方式其实是一样de,但是这个先将对象拿出,是为了方便给这个对象设置属性,比如说*/
                            var c2=this.getCreateAdd();
                            if(c2==null){
                                c2=Ext.create("build.view.CreateAdd")
                            }
                            Ext.Viewport.animateActiveItem(c2,{type:"slide",direction:'left'})
                //c2.setXXXXX()
break; case "3": console.log(3333) /*第三种方式*/ Ext.Viewport.animateActiveItem("createAdd",{type:"slide",direction:'right'}) break; } Ext.getCmp("detailView").setTitle(record.data.name) } } } } })
原文地址:https://www.cnblogs.com/Brose/p/sencha_view.html