Вопрос новичка по архитектуре 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, время: 02:06. |