##// END OF EJS Templates
fixed DjxWidgetBase._eventHandlers initialization
cin -
r81:cc5be30e84f8 v1.2.4 default
parent child
Show More
@@ -1,4 +1,4
1 import { djbase, djclass } from "../declare";
1 import { djbase, djclass, prototype } from "../declare";
2 import _WidgetBase = require("dijit/_WidgetBase");
2 import _WidgetBase = require("dijit/_WidgetBase");
3 import _AttachMixin = require("dijit/_AttachMixin");
3 import _AttachMixin = require("dijit/_AttachMixin");
4 import { Rendition, isNode } from "./traits";
4 import { Rendition, isNode } from "./traits";
@@ -21,6 +21,16 export interface DjxWidgetBase<Attrs = {
21 * and should not be used.
21 * and should not be used.
22 */
22 */
23 readonly _eventMap: Events & GlobalEventHandlersEventMap;
23 readonly _eventMap: Events & GlobalEventHandlersEventMap;
24
25 /** The list of pairs of event and method names. When the widget is created all methods from
26 * this list will be connected to corresponding events.
27 *
28 * This property is maintained in the prototype
29 */
30 _eventHandlers: Array<{
31 eventName: string,
32 handlerMethod: keyof any;
33 }>;
24 }
34 }
25
35
26 type _super = {
36 type _super = {
@@ -30,14 +40,6 type _super = {
30 @djclass
40 @djclass
31 export abstract class DjxWidgetBase<Attrs = {}, Events = {}> extends djbase<_super, _AttachMixin>(_WidgetBase, _AttachMixin) {
41 export abstract class DjxWidgetBase<Attrs = {}, Events = {}> extends djbase<_super, _AttachMixin>(_WidgetBase, _AttachMixin) {
32
42
33 /** The list of pairs of event and method names. When the widget is created all methods from
34 * this list will be connected to corresponding events.
35 */
36 _eventHandlers: Array<{
37 eventName: string,
38 handlerMethod: keyof any;
39 }> = [];
40
41 buildRendering() {
43 buildRendering() {
42 this.domNode = this.render().getDomNode();
44 this.domNode = this.render().getDomNode();
43 super.buildRendering();
45 super.buildRendering();
@@ -223,5 +223,8 export const on = <E extends string>(eve
223 key: K,
223 key: K,
224 _descriptor: TypedPropertyDescriptor<(eventObj: EV) => void> | TypedPropertyDescriptor<() => void>
224 _descriptor: TypedPropertyDescriptor<(eventObj: EV) => void> | TypedPropertyDescriptor<() => void>
225 ): any => {
225 ): any => {
226 target._eventHandlers.push({ eventName, handlerMethod: key });
226 if(!target._eventHandlers)
227 target._eventHandlers = [{ eventName, handlerMethod: key }];
228 else
229 target._eventHandlers.push({ eventName, handlerMethod: key });
227 };
230 };
General Comments 0
You need to be logged in to leave comments. Login now