Open uraincay opened 9 years ago
这里确实有问题,ESUI设计之初是没有任何异步在里面的,当时的社区在Promise模型上非常不成熟(不然ER也不会折腾出个如此不标准的Deferred了),而ESUI还在callback、event和promise之间犹豫
这直接导致,ESUI除非有很大的破坏性更新(不向前兼容),不然是做不出render方法异步的了
Best regards
Gray Zhang
在 2015年3月21日 下午2:49:06, uraincay (notifications@github.com) 写到:
有没有可能继承ER的promise风格,actionPanel在render之后有一个actionPromise属性,方便用户可以用promise风格去把异步过程串联下去。毕竟用callback的方式还是很不方便的。 现在actionPanel在render之后,action type取决于action初始化时机,开始是一个Promise,之后又变成了Action.
// 现在只能这么写 var actionPanel = ui.create('ActionPanel', options); actionPanel.render(); var actionPromise = actionPanel.action; actionPanel.on('actionloaded', function(){ var actualAction = actionPanel.action; // do something else... });
// 期待这种风格 actionPanel.action.then(function(actualAction){ // do something else... })
—
Reply to this email directly or view it on GitHub.
具体你可以在ef项目下找一个issue,有提到怎么把ActionPanel这一类整进ER的流程去……
Best regards
Gray Zhang
在 2015年3月21日 下午2:49:06, uraincay (notifications@github.com) 写到:
有没有可能继承ER的promise风格,actionPanel在render之后有一个actionPromise属性,方便用户可以用promise风格去把异步过程串联下去。毕竟用callback的方式还是很不方便的。 现在actionPanel在render之后,action type取决于action初始化时机,开始是一个Promise,之后又变成了Action.
// 现在只能这么写 var actionPanel = ui.create('ActionPanel', options); actionPanel.render(); var actionPromise = actionPanel.action; actionPanel.on('actionloaded', function(){ var actualAction = actionPanel.action; // do something else... });
// 期待这种风格 actionPanel.action.then(function(actualAction){ // do something else... })
—
Reply to this email directly or view it on GitHub.
有没有可能继承ER的promise风格,actionPanel在render之后有一个actionPromise属性,方便用户可以用promise风格去把异步过程串联下去。毕竟用callback的方式还是很不方便的。 现在actionPanel在render之后,action type取决于action初始化时机,开始是一个Promise,之后又变成了Action.