У меня есть мнение, как:Как получить компонент Object?
Ext.define('Demo.example.OpenRequest', {
extend: 'Ext.draw.Component',
xtype: 'demo',
height: 280,
width: 1213,
viewBox: false,
listeners: {
'beforerender': function (panel) {
alert("Hi");
alert(panel.param);
alert(panel);
var itemArray = panel.items;
itemArray.forEach(function (i) {
if (i.itemId == 'green-rect') {
i.addCls('x-hide-display');
}
});
}
},
constructor: function (config) {
this.items = [{
type: "image",
src: 'http://icons.iconarchive.com/icons/double-j-design/origami-colored-pencil/64/green-user-icon.png',
width: 100,
height: 100,
translate: {
x: 10,
y: 80
}
},
{
type: 'rect',
itemId: 'green-rect',
width: 200,
height: 50,
radius: 10,
fill: 'green',
opacity: 0.5,
stroke: 'black',
'stroke-width': 2,
translate: {
x: 400,
y: 110
},
listeners: {
click: function (as) {
alert('A');
}
}
},
{
type: 'rect',
width: 200,
height: 50,
radius: 10,
itemId: 'red1-rect',
fill: 'red',
opacity: 0.5,
stroke: 'black',
'stroke-width': 2,
translate: {
x: 890,
y: 10
},
listeners: {
click: function() {
alert('B');
}
}
}];
if (this.items) {
Ext.apply(config, {
items: this.items
});
}
this.callParent([config]);
}
});
В beforerender слушателя Я хочу, чтобы скрыть зеленый прямоугольник, основанный на стоимости. Я проверяю там, если i.itemId == 'green-rec' Я добавляю класс с скрытым свойством. Но я даю ему ошибку как неопределенную функцию. Как скрыть это.
CSS:
.x-hide-display {
display: none;
}
Я сделал то, что он не работает .Error: undefined не является функцией. Я хотел проверить предупреждение типа (i instanceof Ext.data.sprite.Rect) Это говорит, что rec не определен. –
Является ли 'i' объектом' Ext.draw.sprite.Rect'? –
Любой другой способ проверки типа объекта? –