minder.js 936 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /**
  2. * @fileOverview
  3. *
  4. * KityMinder 类,暴露在 window 上的唯一变量
  5. *
  6. * @author: techird
  7. * @copyright: Baidu FEX, 2014
  8. */
  9. define(function(require, exports, module) {
  10. var kity = require('./kity');
  11. var utils = require('./utils');
  12. var _initHooks = [];
  13. var Minder = kity.createClass('Minder', {
  14. constructor: function(options) {
  15. this._options = utils.extend({}, options);
  16. var initHooks = _initHooks.slice();
  17. var initHook;
  18. while (initHooks.length) {
  19. initHook = initHooks.shift();
  20. if (typeof(initHook) == 'function') {
  21. initHook.call(this, this._options);
  22. }
  23. }
  24. this.fire('finishInitHook');
  25. }
  26. });
  27. Minder.version = '1.4.43';
  28. Minder.registerInitHook = function(hook) {
  29. _initHooks.push(hook);
  30. };
  31. module.exports = Minder;
  32. });