Sencha touch sencha的本地化

Sencha touch sencha的本地化,sencha-touch,sencha-touch-2,Sencha Touch,Sencha Touch 2,如何使用本地化概念更改按钮文本 Ext.define("iPolis.view.login", { extend: 'Ext.form.Panel', requires: [ 'Ext.TitleBar', 'Ext.form.FieldSet', 'Ext.field.Password', 'Ext.field.Text', 'Ext.field.TextAreaInput',

如何使用本地化概念更改按钮文本

Ext.define("iPolis.view.login", {
     extend: 'Ext.form.Panel',

     requires: [
         'Ext.TitleBar',
         'Ext.form.FieldSet',
         'Ext.field.Password',
         'Ext.field.Text',
         'Ext.field.TextAreaInput',
     ],
     id:'loginPanel',

     loginText:'Login',

     xtype:'login',
     .
     .
     .
     items: [{
           xtype: 'button',
           cls: 'btn',
           text: this.loginText,
           id:'loginbtn',
           handler: function() {

           }
     ]
});
My localization.js是这样的:

if(Ext.form.Panel) {

Ext.override(Ext.form.Panel,{


    loginText:'iniciarsession'


});
}

我得到一个空按钮。请告诉我必须做什么。

您使用了
loginText
作为按钮文本,但在重写时,您使用了
login

应该如此

Ext.override(Ext.form.Panel,{
    loginText: 'iniciarsession'
});

您不应该使用
Ext.override
,因为它在Sencha Touch 2中已被弃用

要实现您的需求,请尝试以下方法:

Ext.getCmp('loginPanel')。loginText='my new value'

如果不起作用,请改用此选项:

Ext.getCmp('loginPanel').config.loginText='my new value'


希望能有帮助。

我这样使用它,它对我很有用

var Messages = {

username: 'Benutzername',
password: 'Passwort'
login: 'iniciarsession'

}
在按钮定义中:

                   {
                      xtype: 'passwordfield',
                      id: 'pwd',
                      placeHolder:'Password',
                      label:Messages.password


                    },
                   {
                    xtype: 'button',
                    cls: 'btn',
                    text:Messages.login,
                    id:'loginbtn',

                }

Sencha Touch 2中不推荐使用Ext.override。请改用Ext.define。但是,在这种情况下,如果您只想为配置设置一个新值,则不必使用本地化。我可以对按钮使用此方法,但我也有文本框、标签等。因此,我需要本地化