Open
Description
Before You File a Proposal Please Confirm You Have Done The Following...
- I have searched for related issues and found none that match my proposal.
- I have searched the current rule list and found no rules that match my proposal.
- I have read the FAQ and my problem is not listed.
My proposal is suitable for this project
- I believe my proposal would be useful to the broader TypeScript community (meaning it is not a niche proposal).
Link to the rule's documentation
https://typescript-eslint.io/rules/prefer-optional-chain/
Description
The rule apparently only tries to prevent a && a.b
, but another way to write that is if (a) a.b
Could the rule be updated to include if
conditions?
Fail
if (callback) {
callback();
}
if (list) {
list.push(item);
}
Pass
callback?.();
list?.push(item);
// Optional chaining doesn't apply here
if (callback) {
callbacks.push(callback);
}
Additional Info
No response