사용자 지정 구성 요소를 한 페이지에서 200 번 반복하여 각 구성 요소의 참조를 저장해야하는 응용 프로그램이 있습니다. 나는 그것을 for 루프를 사용하여 추가하려고 시도했다. 그러나 그렇게하는 것은 나에게 스크립트 오류를주고있다. extjs에서 사용자 지정 구성 요소를 반복하는 다른 방법이 있습니까? 여기에 제가 사용하고있는 코드가 있습니다.extjs의 사용자 지정 요소 반복하기
Ext.application({
requires: ['Ext.container.Viewport'],
name: 'Excel',
launch: function() {
Ext.define('ExcelCell',{
extend: 'Ext.panel.Panel',
itemcls: 'excelCell',
height: 20,
width: 64
});
var port = Ext.create('Ext.container.Viewport', {
layout: 'absolute'
});
var totalRowsToDraw = port.height/20;
var totalColumnsToDraw = port.width/64;
var cellDictionary = new Object();
var cell;
for(var r=0; r < totalRowsToDraw ;r++){
for(var c=0; c < totalColumnsToDraw ;c++){
cell = Ext.create('ExcelCell');
cell.x = c*64;
cell.y = r*20;
port.add(cell);
cellDictionary[r+','+c] = cell;
}
}
}
});
또한 내 CSS 코드는 귀하의 코드가 완벽하게 작동
.excelCell{
padding-bottom: 0;
padding-left: 0;
padding-right: 0;
padding-top: 0;
border: 1;
border-style: solid;
border-color: #B7BABC;
background-color: #000000;
}
잘 작동합니다 : http://jsfiddle.net/XGdu9/ (하지만 저는'panel's 대신'XTemplate' 또는'container's 또는'box's를 사용합니다) –
제가 사용하고있을 때 Hbox 또는 Vbox 패널에만 테두리가 표시되지 않습니다. 셀 주위에 테두리가 나타납니다. 나는 ExtJs의 초보자이기 때문에 깊이있는 지식이 없기 때문에 왜 그런 일이 일어나고 있는지 알 수 없습니다. – Ashok