我有一个警告
'res' is assigned a value but never used no-unused-vars
,代码与此类似:
function* cancelCredit(action) {
const res = yield call(/*Nice api call 1*/);
const res2 = yield call(/*Nice api call 2*/);
// Do something with res2
yield // something
}
如何隐藏此生成器函数的第一个
yield
,而无需使用未使用的变量,例如console.log(res)
?
您可以通过使用
void
运算符来忽略任何值:
void yield call(/*Nice api call 1*/);
(这对于强制所有承诺明确等待或作废的 eslint 规则特别有用)
但是,您的情况不是您必须
void
的2.5种情况之一 - 您可以忽略该值,这是允许的
yield call(/*Nice api call 1*/);
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/yield
语法
yield yield expression
参数 表达式 可选 通过迭代器协议从生成器函数产生的值。如果省略,则会产生 undefined。
返回值 返回传递给生成器的 next() 方法的可选值以恢复其执行。
注意:这意味着 next() 是不对称的:它总是向当前挂起的yield 发送一个值,但返回下一个yield 的操作数。无法检索传递给第一个 next() 调用的参数,因为当前没有挂起的收益。