Sencha Touch - Rediriger vers un autre point de vue

Je suis la construction d'un Sencha Touch application et aux prises avec de réorienter ou changer un autre point de vue après la connexion. Après la connexion, j'ai besoin de le prendre pour la Page d'Accueil. Mais mon ci-dessous code de Connexion du Contrôleur de authenticateUser()ne fonctionne pas.

Essayé avec Ext.Fenêtre d'affichage.push(homePanel) , Ext.Fenêtre d'affichage.setActiveItem(homePanel) également. Mais rien ne fonctionne.

LoginView

Ext.define("Mobile.view.LoginView", {
extend: "Ext.form.FormPanel",
alias: "widget.mylogin",
id: 'loginFormPanel',

config: {


    name: 'loginform',
    frame: true,
    url: 'login/Authenticate',
    title: 'Login',
    items: [

      {
          xtype: 'fieldset',
          itemId: 'LoginFieldset',
          margin: '10 auto 0 auto ',
          title: '',
          items: [

                {
                    //User Name field def
                },

                {
                    //Pwd Field Def
                }
            ]
      },
        {
            xtype: 'button',
            id: 'loginButton',           
            text: 'Login',
            action: 'login'
        }

    ]
}

});

De Connexion Du Contrôleur

Ext.define("Mobile.controller.LoginController", {
extend: "Ext.app.Controller",
views: ['LoginView', 'HomeView'],
models: ['UserModel'],
config: {
    refs: {
        loginForm: "#loginFormPanel"
    },
    control: {
        'button[action=login]': {
            tap: "authenticateUser"
        }
    }
},

authenticateUser: function (button) {
            loginForm.submit({
            method: 'POST',
            success: function (form, result) {
            //THIS IS NOT WORKING
                Ext.Viewport.add(Ext.create('Mobile.view.HomeView'));

            },
            failure: function (form, result) {                   
                console.log('Error');
                Ext.Msg.alert('Check the logic for login and redirect');
            }
        });
       }           
});

Maison Vue

Ext.define('Mobile.view.HomeView', {
extend: 'Ext.Container',
id: 'homescreen',
alias: "widget.homepanel",
 config: {
    layout: {
        type: 'card',
        animation: {
            type: 'flip'
        }
    },
    items: [
        {
            xtype: 'toolbar',
            docked: 'bottom',
            id: 'Toolbar',
            title: 'My App',
            items: [
                {
                    id: 'settingsBtn',
                    xtype: 'button',
                    iconCls: 'settings',
                    ui: 'plain',
                    iconMask: true
                }
            ]
        },
        {
            xclass: 'Mobile.view.ActionListView'
        }
    ]
},
});

App.JS

Ext.application({
name: "Mobile",
controllers: ["LoginController", "HomeController"],
views: ['LoginView', 'HomeView', 'ActionListView'],
models: ['UserModel', 'OrganizationModel', 'ActionModel'],
stores: ['OrganizationStore', 'ActionStore'],
launch: function () {

    var loginPanel = Ext.create('Ext.Panel', {
        layout: 'fit',
        items: [
            {
                xtype: 'mylogin'
            }
        ]
    });
    Ext.Viewport.add(loginPanel);
}

});

Quelqu'un a une idée?
Déjà visé Charger un autre point de vue après la connexion avec sencha touch 2.0 . Mais il n'y a pas de réponse . S'il vous plaît aider

  • toute erreur est à venir? Si oui,veuillez spécifier.
  • Pas d'erreurs d'affichage. J'ai vérifié avec la console.journal aussi. Il a exécuté avec des erreurs. Mais la vue n'est pas en train de changer. Cant on change tout simplement vue comme Ext.Fenêtre d'affichage.ajouter(Ext.créer('Mobile.vue.HomeView')); ?
  • D'abord je suis l'ajout de vue login dans app.js de la lauch fonction en utilisant la même façon. Maintenant, je veux le remplacer avec un nouveau point de vue, ne devrait pas permettre à l'utilisateur de revenir à la page de connexion une fois qu'ils authentifié.