EXTJS7 自定義組件 使用element和renderTpl繪制

小編:管理員 353閱讀 2022.09.07

版本

7.4.0

Modern工具包
Ext.define('myComponent',{
	// 繼承Ext.Component
	extend: 'Ext.Component'
	// 渲染元素
	element: {
		// 根元素引用
		reference: 'element',
		children:[{
			// 自定義HTML對象引用
			reference: 'myObj',
			// HTML標簽
			tag: 'img',
			// 綁定事件
            listeners: {
              click: 'onInnerClick'
            }
		}]
	},
	onInnerClick:function(){}
});
復制

注:element屬性根元素引用必須存在,否則報錯

[E] Ext.Widget.initElement(): No ‘element’ reference found in ‘myComponent’ template.

Classic工具包
Ext.define('myComponent',{
	// 繼承Ext.Component
	extend: 'Ext.Component'
	// 渲染元素
	renderTpl:  [
		// {id}值為myComponent組件ID
        '

{title}

', '

{msg}

', ], // 用于渲染的額外屬性值 renderData: { title: "Error", msg: "Something went wrong" }, // 子元素選擇器 childEls: ["title"], listeners: { afterrender: function(cmp){ // 渲染完成后可以從組件的屬性獲取到對應子元素對象 cmp.title.setStyle({color: "red"}); } } });
復制

注:子元素必須指定id屬性和data-ref屬性,并通過childEls屬性暴露,才可以通過組件的對應屬性獲取到對象引用。

關聯標簽:
亚洲国产欧美图片,亚洲aⅴ在线av,日韩亚洲综合图片视频,日本av精品在线中文