在 JavaScript Generator 函数中,若只需执行 yield 副作用(如发起 API 调用)而无需其返回值,直接赋值给变量会触发 ESLint 的 no-unused-vars 警告;此时可省略变量声明,仅用 yield expression 语句即可安全忽略返回值,无需 void 或占位符。
在 javascript generator 函数中,若只需执行 `yield` 副作用(如发起 api 调用)而无需其返回值,直接赋值给变量会触发 eslint 的 `no-unused-vars` 警告;此时可省略变量声明,仅用 `yield expression` 语句即可安全忽略返回值,无需 `void` 或占位符。
Generator 函数中的 yield 表达式本质是暂停执行并交出控制权,其返回值(即 iterator.next(value) 中传入的 value)属于下一次恢复时的输入,而非当前 yield 的输出。而 yield expression 本身的求值结果(即 expression 的返回值)才是当前 next() 调用所获取的 .value —— 这个值完全可以被忽略,就像忽略普通函数调用的返回值一样。
✅ 正确写法(推荐):直接执行,不声明变量
function* cancelCredit(action) { yield call(/* Nice api call 1 */); // ✅ 无变量、无警告、语义清晰 const res2 = yield call(/* Nice api call 2 */); // 处理 res2... yield put({ type: 'CREDIT_CANCELLED' });}
⚠️ 注意事项:
? 总结:Generator 中 yield expression 是一条完整的语句,无需绑定变量。忽略返回值是合法且惯用的写法,既符合语言规范,也保持代码简洁专业。
Flowchart2Mermaid 如何结合文本、拖拽和自然语言命令编辑流程图?
ubnutu桌面环境Gnome配置tweak tool时看不到extension插件选项
AI Flowchart Studio 如何从文本生成 Mermaid 图并导出 SVG、PNG 或源码?
SAGE 如何通过提示词编辑 Draw.io 和 Mermaid 软件工程图?
AI 流程图工具如何实现无需登录的对话生成、源码编辑和实时预览?
EaseChart Mermaid AI 如何从文本提示生成可编辑图表?