我想实例化一个在构造函数中接收生成器的类。
我找不到任何有关如何完成此操作的文档。
从更广泛的意义上来说,我正在使用 Redux-Saga 并尝试通过类来概括异步逻辑。
class GeneratorClass {
constructor(generator) {
this.func = generator
}
}
有什么想法吗?
最佳答案
您可以简单地将生成器的标识符传递给构造函数:
class GeneratorClass {
constructor(generator) {
this.func = generator
}
}
function* generator() {
yield 1;
yield 10;
}
myGenerator = new GeneratorClass(generator)
console.log(myGenerator.func().next())
您还可以使用包装函数将参数传递给生成器:
class GeneratorClass {
constructor(generator, start) {
this.func = generator(start)
}
}
function generator(i) {
return function*() {
yield i + 1;
yield i + 10;
}
}
myGenerator = new GeneratorClass(generator, 10)
console.log(myGenerator.func().next())
关于javascript - 组合 JavaScript 生成器和类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50935683/