Вопрос новичка по архитектуре MVC
Добрый день! Второй день осваиваю ExtJS. Не могу разобраться.
Задача стандартна и просто: Как только открываешь индексную страницу грузится пустой workspace и вверху тулбар, который делится на главное меню и userBar (фио пользователя, кнопка с личные сообщениями, и т. д). Я начал делать так: app.js
Ext.application({
name: 'IvCRM',
appFolder: 'app',
requires: [
'IvCRM.view.Workspace'
],
launch: function() {
var workspace = Ext.create('IvCRM.view.Workspace');
Ext.create('Ext.container.Viewport', {
layout: 'fit',
items: [workspace]
});
}
});
views.Workspace.js:
Ext.define('IvCRM.view.Workspace', {
extend: 'Ext.panel.Panel',
bodyCls: 'panel-workspace',
initComponent: function() {
var toolbar = Ext.create('Ext.toolbar.Toolbar'); // верхний тулбар
this.tbar = toolbar;
this.callParent();
}
});
Далее, я не знаю за что взяться( Мне нужно загрузить в тулбар пункты меню и поставить им обработчики. А так же узнать ФИО пользователя с сервера, количество непрочитаных сообщений и также загрузить это в тулбар. Вопрос. Получается, мне нужно следать для menu и userBar отдельные контроллеры и вьюшки? Если да, то как мне их потом слить воедино в Workspace.js и добавить в toolbar? |
я вот так делал:
Ext.Loader.setPath('Ext.ux', '/js/lib/ext/ux');
Ext.require([
'Ext.data.*',
'Ext.util.*',
'Ext.view.View',
'Ext.ux.DataView.Animated',
'Ext.XTemplate',
'Ext.panel.Panel',
'Ext.toolbar.*',
'Ext.slider.Multi']);
Ext.onReady(function()
{
Ext.create('Ext.Viewport',
{
layout: 'border',
renderTo: Ext.getBody(),
items: [
{
region: 'center',
tbar: [
{
xtype: 'button',
text: ' Данные ',
menu: [
{
text: 'Видео'
},
{
text: 'Книги'
},
{
text: 'Страницы'
},
{
text: 'Документы'
}]
},
{
xtype: 'button',
text: ' Настройки '
},
'->',
{
xtype: 'button',
text: ' На сайт '
},
'-',
{
xtype: 'button',
text: ' Выйти ',
handler: function ()
{
console.log(1);
}
},
'-',
{
xtype: 'label',
text: 'дата последнего входа: ' + datetime_input
}],
margins: '1 1 1 1',
id: 'content-panel',
layout: 'card',
activeItem: 0,
border: false,
items: layoutExamples
}]
});
});
|
за основу брал отсюда:
http://docs.sencha.com/extjs/4.2.2/#...t-browser.html |
| Часовой пояс GMT +3, время: 17:34. |