Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.12.2018, 10:49
Интересующийся
Отправить личное сообщение для Postgeograph Посмотреть профиль Найти все сообщения от Postgeograph
 
Регистрация: 08.11.2018
Сообщений: 14

Добавление custom класса как item класса tab. Unrecognized alias: widget.
Добрый день!
Имеется необходимость добавить как объекты класса Tab несколько классов grid и panel. При добавлении одного из классов grid, приложение функционирует нормально. При добавлении второго класса при вызове tab класса дебагер выдает следующую ошибку:

Uncaught Error: [Ext.createByAlias] Unrecognized alias: widget.contlistII

Код класса содержащего tab:

Ext.define('Foresto.view.forms.LoginWorkSpace', {
    extend: 'Ext.panel.Panel',
    requirs: ['Foresto.model.EditListRenters',
              'Foresto.model.EditLCA'],
   
    
    height: '60%',
    id:'loginWS',
    fullscreen: true,
    
    closable: false,
    header: {
        cls: 'header-cls'
        
    },
    scrollable: true,
    
    xtype: 'loginWS',
    title: 'ЛИЧНЫЙ КАБИНЕТ',
    
    
    modal: true,
    hideOnMaskTap: true,
    showAnimation: {
        type: 'popIn',
        duration: 250,
        easing: 'ease-out'
    },
    hideAnimation: {
        type: 'popOut',
        duration: 250,
        easing: 'ease-out'
    },
    centered: true,
    width:  '100%',
    
    items:[{
    	xtype:'tabpanel',
    	fullscreen: true,
    	cls: 'header-cls',
        
    	
    	width:  '100%',
    	height: '80%',
    	
    	
    	renderTo:'loginWS',
    	shadow: true,
        
        tabBar: {
            layout: {
                pack: 'center'
            }
        },
        activeTab: 1,
        
        defaults: {
            scrollable: true,
            userSelectable: {
               bodyElement: true
            }
        },
    	items: [
    	        {
    	        	xtype: 'panel',
    	        	layout:'vbox',
    	        	
    	        	title: 'ИНФОРМАЦИЯ О ПОЛЬЗОВАТЕЛЕ',
    	        	cls: 'header-cls',
    	        	
    	        	items:[
    	        	       {xtype: 'selectfield',
    	        	        label: 'Имя',
    	        	        margin: 4,
    	        	       },{
    	        	    	xtype: 'selectfield',
       	        	        label: 'Статус',
       	        	        margin: 4,
    	        	       },{
    	        	    	xtype: 'selectfield',
       	        	        label: 'Регион',
       	        	        margin: 4,   
    	        	       },{
    	        	    	xtype: 'button',
    	        	    	ui:'confirm',
    	        	    	text:'Добавить арендатора'
    	        	    	},{
    	        	    	xtype: 'button',
        	        	    text:'Редактировать профиль'
    	        	    	}
    	        	       ]
    	        },
    	        {	xtype: 'panel',
    	        	title: 'ДОГОВОР',
    	        	items:[
    	        	       {xtype:'contlistII'}
    	        	       ]
    	        },
    	        {	xtype: 'panel',
    	        	
    	        	title: 'СПИСОК',
    	        	
    	        	
    	        	
    	        	cls: 'header-cls'
    	        },{	xtype: 'panel',
    	        	layout:'fit',
    	        	title: 'АРЕНДАТОРЫ',
    	        	cls:'header-cls',
    	        	items:[{
    	        		xtype:'rentlist'
    	        	}]
    	        	
    	        }
    	        ]
    }],
    
   
    scrollable: true,
    scope: this
});


косячный грид (даже если убираю другой грид, ошибка никуда не девается):

Ext.define('Foresto.model.EditLCA', {
	extend:'Ext.grid.Grid',
	xtype: 'contlistII',
	requires: [
	'Ext.grid.plugin.Editable',
	'Ext.grid.plugin.ViewOptions',
	'Ext.grid.plugin.PagingToolbar',
	'Ext.grid.plugin.SummaryRow',
	'Ext.grid.plugin.ColumnResizing',
	'Ext.grid.plugin.MultiSelection',
	'Ext.grid.plugin.RowExpander',
	
	'Foresto.model.CAListModel'
	],
	shadow: true,
	grouped: true,

	rowLines: true,
	store: {
		model:'Foresto.model.CAListModel', 
		autoLoad: true,
		
		pageSize:0,
		proxy: {
			type:'ajax',
			url:'api/contract/',
			reader:{
				type:'json',
				rootProperty: 'results'
			}
		
		}
	},
	plugins: [
		{
	        type: 'grideditable'
	    }, {
	        type: 'gridviewoptions'
	    }, {
	        type: 'pagingtoolbar'
	    }, {
	        type: 'summaryrow'
	    }, {
	        type: 'columnresizing'
	    }, {
	        type: 'rowexpander'
	    }
	],
   
	columns: [
	{
		text: 'id',
		flex: 1,
		minWidth: 100,
		dataIndex: 'id'
	},{
		text:'renter',
		dataIndex:'renter',
		minWidth: 100
			
	},{
		text:'date',
		dataIndex:'date',
		format: 'd-m-Y',
		minWidth: 100
	},{
		text:'organ',
		dataIndex:'organ',
		minWidth: 100
	},{
		text:'num',
		dataIndex:'num',
		minWidth: 100
	},{
		text:'date_reg',
		dataIndex:'date_reg',
		format: 'd-m-Y',
		minWidth: 100
	},{
		text:'kadastre',
		dataIndex:'kadastre',
		minWidth: 100
	},{
		text:'glr',
		dataIndex:'glr',
		minWidth: 100
	},{
		text:'reason',
		dataIndex:'reason',
		minWidth: 100
	},{
		text:'use_start',
		dataIndex:'use_start',
		format: 'd-m-Y',
		minWidth: 100
	},{
		text:'use_end',
		dataIndex:'use_end',
		format: 'd-m-Y',
		minWidth: 100
	},{
		text:'act_num',
		dataIndex:'act_num',
		minWidth: 100
	},{
		text:'act_date',
		dataIndex:'act_date',
		format: 'd-m-Y',
		minWidth: 100
	},{
		text:'project',
		dataIndex:'project',
		minWidth: 100
	},{
		text:'project_date',
		dataIndex:'project_date',
		format: 'd-m-Y',
		minWidth: 100
	},{
		text:'project_author',
		dataIndex:'project_author',
		minWidth: 100
	},{
		text:'positive_date',
		dataIndex:'positive_date',
		format: 'd-m-Y',
		minWidth: 100
	}
	]
	
	
	
});


и его модель.

Ext.define('Foresto.model.CAListModel',{
	extend:'Ext.data.Model',
	fields: [{
		name: 'id'
	},{
		name:'renter'
			
	},{
		name:'date'
	},{
		name:'organ'
	},{
		name:'num'
	},{
		name:'date_reg'
	},{
		name:'kadastre'
	},{
		name:'glr'
	},{
		name:'reason'
	},{
		name:'use_start'
	},{
		name:'use_end'
	},{
		name:'act_num'
	},{
		name:'act_date'
	},{
		name:'project'
	},{
		name:'project_date'
	},{
		name:'project_author'
	},{
		name:'positive_date'
	}],
	idField: 'id'
})


Вопросы:
1)как решить данную проблему? (Uncaught Error: [Ext.createByAlias] Unrecognized alias: widget.contlistII)
2)удачно ли спроеткирована указанная выше часть приложения или стоит как то упростить код/использовать другие конструкции?
Ответить с цитированием
  #2 (permalink)  
Старый 13.12.2018, 11:36
Профессор
Отправить личное сообщение для siber-biber Посмотреть профиль Найти все сообщения от siber-biber
 
Регистрация: 07.08.2013
Сообщений: 214

Опечатка в классе Foresto.view.forms.LoginWorkSpace "requirs" -> "requires"
Ответить с цитированием
  #3 (permalink)  
Старый 13.12.2018, 11:40
Интересующийся
Отправить личное сообщение для Postgeograph Посмотреть профиль Найти все сообщения от Postgeograph
 
Регистрация: 08.11.2018
Сообщений: 14

огромное спасибо, совсем не пришло в голову проверить и эту опечатку.
Ответить с цитированием
  #4 (permalink)  
Старый 13.12.2018, 11:41
Профессор
Отправить личное сообщение для siber-biber Посмотреть профиль Найти все сообщения от siber-biber
 
Регистрация: 07.08.2013
Сообщений: 214

в модели idField? наверно имелось в виду idProperty
Ответить с цитированием
  #5 (permalink)  
Старый 13.12.2018, 11:44
Профессор
Отправить личное сообщение для siber-biber Посмотреть профиль Найти все сообщения от siber-biber
 
Регистрация: 07.08.2013
Сообщений: 214

посмотрите внимательно на класс Foresto.view.forms.LoginWorkSpace

возможно у вас лишняя вложенность компонентов присутствует

он содержит одну tabpanel в себе ..почему бы этому классу самому не быть таб панелью как вариант?
Ответить с цитированием
  #6 (permalink)  
Старый 13.12.2018, 11:50
Профессор
Отправить личное сообщение для siber-biber Посмотреть профиль Найти все сообщения от siber-biber
 
Регистрация: 07.08.2013
Сообщений: 214

та же история здесь:
{   
    xtype: 'panel',
    title: 'ДОГОВОР',
    items: [
       {xtype:'contlistII'}
    ]
},
может быть просто:
{   
    xtype: 'contlistII',
    title: 'ДОГОВОР'
},

и вот это:
{ 
    xtype:'panel',
    layout:'fit',
    title: 'АРЕНДАТОРЫ',
    cls:'header-cls',
    items:[{
        xtype:'rentlist'
    }]
    
}
соответственно
{ 
    xtype:'rentlist',
    layout:'fit',
    title: 'АРЕНДАТОРЫ',
    cls:'header-cls'
}
Ответить с цитированием
  #7 (permalink)  
Старый 13.12.2018, 11:56
Профессор
Отправить личное сообщение для siber-biber Посмотреть профиль Найти все сообщения от siber-biber
 
Регистрация: 07.08.2013
Сообщений: 214

кроме того в данном классе много пропущенных зависимостей.

всё что используете в классе должно быть упомянуто в requires.
например:
...
                           },{
                            xtype: 'selectfield',
                            label: 'Регион',
                            margin: 4,   
                           },{
                            xtype: 'button',
                            ui:'confirm',
                            text:'Добавить арендатора'
                            },{
...

selectfield (Ext.field.Select) и button (Ext.button.Button) должны быть в requires
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 13:29
Добавление класса или id к ссылке. Простой вопрос: Как? Mrjoey Элементы интерфейса 1 18.05.2011 16:42