Extjs 国际化
对于Extjs本身,相关国际化文件在源码locale中。
对于自己定义的控件,我们应该如何编写国际化文件?
查看locale中的源码,我们会发现编写一个国际化其实是override
我们先创建一个英文js en_US.js, 代码如下:
Ext.onReady(function () {
Ext.define("X.locale.en_US.home.SystemTab", {
override: "X.home.SystemTab",
title: "System Management"
});
});
Ext.define("X.locale.en_US.Component", {
override: "Ext.Component"
});
上面的代码是针对SystemTab的国际化
下面看一个SystemTab的代码:
Ext.define('X.home.SystemTab', {
extend: 'Ext.panel.Panel',
alias: 'widget.systemTab',
/**
*default:true
*是否验证权限 true:验证 false:不验证
*/
auth: true,
/**
*标题用于国际化
*/
title: '系统管理',
initComponent: function () {
this.callParent(arguments);
}
});
这里其实就是为了SystemTab中title属性的国际化
下面只需要在页面上引用en_US.js就可以了