私がカスタムジェネレータを作成すると、私はフィットと見えるように値を設定することができますが、私はここで間違っていると思います。私が望むように/ doneを設定してください。私は何かを設定すると、それはすべて、「値」になりますが、発電機の復帰は「行わ:偽」 - 私は「完了:true」を強制しようとしています発電機と設定値/降伏時に実行
var A = [
{id: 1, page: 'page one'},
{id: 2, page: 'page two'},
{id: 3, page: 'page three'},
{id: 4, page: 'page four'},
]
function* gen(iteree) {
let input = yield null
while(true)
input = yield iteree(input) ? iteree(input) : { done: true}
}
// this will be built out more, just showing a
// passing of a function here
let inter = (a) => {
return A[a]
}
let c = gen(inter)
console.log(c.next())
console.log(c.next(4)) // <-- **I want this to yield {value: null, done: true}**
それが得られます。{値を:{done:true}、done:false}
uggg !!とても簡単です。尋ねるのが悪いです!爆笑 - 私は再び発電機を起動したいのですが?それは、一度 "完了"が返されたようだ...すべての賭けはオフです。 –
心配しないで、喜んで助けてください:) – loganfsmyth
私は尋ねました:もし私が発電機をもう一度始動したいのであれば、私はそれの新しいインスタンスを作る必要はありません。 –