Skip to content

Commit b8437bc

Browse files
code cleanup
1 parent 0d0b32f commit b8437bc

File tree

2 files changed

+25
-26
lines changed

2 files changed

+25
-26
lines changed

packages/plugins/eslint-plugin-react-x/src/rules/no-unnecessary-use-callback.spec.ts

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -600,7 +600,7 @@ ruleTester.run(RULE_NAME, rule, {
600600
`,
601601

602602
tsx`
603-
import { useCallback, useState, useEffect } from 'react';
603+
import { useCallback, useState, useEffect } from 'react';
604604
605605
function App({ items }) {
606606
const [test, setTest] = useState(items.length);
@@ -621,30 +621,30 @@ ruleTester.run(RULE_NAME, rule, {
621621
}
622622
`,
623623
tsx`
624-
import { useCallback, useState, useEffect } from 'react';
624+
import { useCallback, useState, useEffect } from 'react';
625625
626-
const Component = () => {
627-
const [test, setTest] = useState(items.length);
626+
const Component = () => {
627+
const [test, setTest] = useState(items.length);
628628
629-
const updateTest = useCallback(() => { setTest(items.length + 1) }, [setTest, items]);
629+
const updateTest = useCallback(() => { setTest(items.length + 1) }, [setTest, items]);
630630
631-
useEffect(() => {
632-
// some condition
633-
updateTest();
634-
}, [updateTest]);
631+
useEffect(() => {
632+
// some condition
633+
updateTest();
634+
}, [updateTest]);
635635
636-
useEffect(() => {
637-
// some condition
638-
updateTest();
639-
}, [updateTest]);
636+
useEffect(() => {
637+
// some condition
638+
updateTest();
639+
}, [updateTest]);
640640
641-
return <div />;
641+
return <div />;
642642
};
643643
`,
644644
tsx`
645-
import { useCallback, useState, useEffect } from 'react';
645+
import { useCallback, useState, useEffect } from 'react';
646646
647-
const Component = () => {
647+
const Component = () => {
648648
const [test, setTest] = useState(items.length);
649649
650650
const updateTest = useCallback(() => { setTest(items.length + 1) }, [setTest, items]);
@@ -653,9 +653,9 @@ ruleTester.run(RULE_NAME, rule, {
653653
};
654654
`,
655655
tsx`
656-
import { useCallback, useState, useEffect } from 'react';
656+
import { useCallback, useState, useEffect } from 'react';
657657
658-
const Component = () => {
658+
const Component = () => {
659659
const [test, setTest] = useState(items.length);
660660
661661
const updateTest = useCallback(() => { setTest(items.length + 1) }, [setTest, items]);

packages/plugins/eslint-plugin-react-x/src/rules/no-unnecessary-use-callback.ts

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -121,19 +121,18 @@ export function create(context: RuleContext<MessageID, []>): RuleListener {
121121
const usages = references.filter((ref) => !(ref.init ?? false));
122122
const effectSet = new Set<TSESTree.Node>();
123123

124-
const isUsedOutSideOfEffect = usages.some((usage) => {
124+
for (const usage of usages) {
125125
const effect = AST.findParentNode(usage.identifier, (node) => isUseEffectLikeCall(node));
126+
126127
if (effect == null) {
127-
return true;
128+
return;
128129
}
129-
effectSet.add(effect);
130-
return false;
131-
});
132130

133-
if (isUsedOutSideOfEffect || effectSet.size !== 1) {
134-
return;
131+
effectSet.add(effect);
132+
if (effectSet.size > 1) {
133+
return;
134+
}
135135
}
136-
137136
context.report({
138137
messageId: "noUnnecessaryUseCallbackInsideUseEffect",
139138
node,

0 commit comments

Comments
 (0)