12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- import _ from 'lodash'
- import {lookupFn, lookupScope} from "./lib/lib"
- import initCols from './controls/cols'
- import * as SystemLib from './lib/systemLib'
- import './lib/fix'
- export function init() {
- /**
- * 改变事件的触发方式
- */
- const _getFireInfo = Ext.util.Event.prototype.getFireInfo
- Ext.util.Event.prototype.getFireInfo = function (listener, fromWrapped) {
- var observable = this.observable,
- fireFn = listener.fireFn,
- scope = listener.scope,
- namedScope = listener.namedScope,
- fn, origin;
- fn = fromWrapped ? listener.fn : fireFn;
- if (typeof fn === 'string' &&
- (_.startsWith(fn, 'scope.') ||
- _.startsWith(fn, 'system.') ||
- _.startsWith(fn, 'format.')
- )) {
- if (window["IS_DESIGN_MODE"]) {
- fn = Ext.emptyFn
- } else {
- scope = lookupScope(observable)
- fn = lookupFn(scope, fn)
- }
- return {scope, fn}
- }
- return _getFireInfo.call(this, listener, fromWrapped)
- }
- // const _addListener = Ext.mixin.Observable.prototype.addListener
- // Ext.mixin.Observable.prototype.addListener = function (eventName, fn, scope, options, order, caller) {
- // console.log('addListener', eventName, fn, scope, options, order, caller)
- // // const scope = lookupScope(this)
- // // const fn = lookupFn(scope, fn)
- //
- // return _addListener.call(this, eventName, fn, scope, options, order, caller)
- // }
- /**
- * 改变事件的获取方式.
- * 具体见: ext-all-debug.js:23216 addListener
- * https://docs.sencha.com/extjs/6.6.0/classic/Ext.util.Observable.html#method-addListener
- * https://docs.sencha.com/extjs/6.6.0/classic/src/Observable.js.html#Ext.mixin.Observable-method-addListener
- */
- // const _doAddListener = Ext.mixin.Observable.prototype.doAddListener
- // Ext.mixin.Observable.prototype.doAddListener = function (ename, fn, scope, options, order, caller, manager) {
- // console.log('doAddListener', ename, fn, scope)
- // if (typeof fn === 'string' &&
- // (_.startsWith(fn, 'scope.') ||
- // _.startsWith(fn, 'system.') ||
- // _.startsWith(fn, 'format.')
- // )) {
- //
- // if (window["IS_DESIGN_MODE"]) {
- // fn = Ext.emptyFn
- // } else {
- // // console.log('doAddListener', ename, fn, scope, options, order, caller, manager)
- // // const vm = this.lookupViewModel()
- // // if (vm && vm.yvanScope) {
- // // scope = vm.yvanScope
- // // fn = scope[fn.substr('scope.'.length)]
- // // }
- // scope = lookupScope(this)
- // fn = lookupFn(scope, fn)
- // }
- // }
- //
- // _doAddListener.call(this, ename, fn, scope, options, order, caller, manager)
- // }
- // 将 SystemLib 扩展到 window.system 下
- if (!window['system']) {
- window['system'] = {}
- }
- _.extend(window['system'], SystemLib)
- initCols()
- }
|