我有一個應用程序,我必須在單個頁面上重複一個自定義組件,說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/(但我認爲你更喜歡使用'XTemplate'或'容器'或'盒'代替面板') –
當我使用Hbox或Vbox我沒有得到邊界只爲面板我正在獲取圍繞單元格的邊框。我是ExtJs的新手,所以我沒有深入的知識爲什麼會發生這種情況。 – Ashok