У меня есть два класса в ExtJS 4
(сетка и форма) с коррелированными свойствами (определения столбцов и полей).
Я хочу создать общий файл определений для них и динамически загрузить его:
# app/common/Columns.js
Ext.ns('myapp.common');
myapp.common.Columns =
[
{
text: 'Name',
dataIndex: 'name',
},
{
text: 'Email',
dataIndex: 'email',
}
];
# app/view/Grid.js
Ext.define
(
'myapp.view.Grid',
{
extend: 'Ext.grid.Panel',
columns: myapp.common.Columns
}
);
# app/view/Form.js
Ext.define
(
'myapp.view.Form',
{
extend: 'Ext.form.Panel',
items: myapp.common.Columns.map
(
function(v)
{
return {
name: v.dataIndex,
fieldLabel: v.text,
};
}
);
}
);
Как видите, app.common.Columns
не является классом.
Я знаю, что могу преобразовать его в класс и переопределить конструкторы формы и сетки, чтобы использовать его, но яхотелось бы, чтобы все было просто.
Нужно ли вручную добавлять тег <script>
для app/common/Columns.js
или есть способ загрузить его динамически?