我不会构建用户联系表,其中包含 2 个包含相同字段但使用不同语言的选项卡。使用 MVC 和 ExtJS 4.0.7。
我不会重用userinfo面板 .. 只是给它一个参数 langKey = en/fr
带有用户信息的选项卡小部件如下所示:
Ext.define('MyApp.view.user.FormUserInfo', {
extend: 'Ext.Panel',
alias: 'widget.userinfo',
defaultType: 'textfield',
items: [
{
name: 'first_name['+langKey+']',
}, {
name: 'last_name['+langKey+']',
}]
});
表单像这样加载它:
Ext.define('MyApp.view.user.Form', {
extend: 'Ext.FormPanel',
xtype: 'form',
items: [
{
xtype: 'tabpanel',
activeTab: 2,
items:[
{
xtype: 'userinfo',
cls: 'en',
tabConfig: {
title: 'Contact Details(EN)'
}
},{
xtype: 'userinfo',
cls: 'de',
tabConfig: {
title: 'Contact Details(DE)'
}
}]// /TabPanel.items
}]// /FormPanel.items
});
事实上,表单包含 10 多个字段和2 种或更多语言......所以我需要很好地控制数据。
使用小部件或我可以使用的属性时有什么方法可以传递变量?我试图使用面板类(cls) 'first_name['+this.cls+']'
,但范围是错误的或其他东西(而且有点难看)。