【发布时间】:2015-11-29 12:32:07
【问题描述】:
如何在嵌套函数中使用yield?
function* translate(){
socket.once( 'translate/set', function( data){
yield data
});
socket.emit( 'translate/get', { query: query})
};
var data = translate().next().value;
console.log( data);
错误
yield is not defined
我不明白如何在不改变其代码的情况下使用生成器来实现异步函数
【问题讨论】:
-
在生成器上同步调用
.next会产生一个值。这使得无法支持此工作流程。 -
你想在这里做什么? You cannot yield from within a non-generator function(如回调)。但是你为什么要使用生成器呢?
-
我想异步加载翻译并返回同步样式。
标签: javascript asynchronous socket.io generator ecmascript-6