Run React Doctor on push #1
Annotations
10 errors and 10 warnings
|
react-doctor/no-adjust-state-on-prop-change:
src/pages/TasksPage.tsx#L49
State adjusted in a useEffect when a prop changes — forces an extra render with a stale UI between the two commits. Adjust the state during render with a `prev`-prop comparison instead, or refactor to remove the duplicated state.
|
|
react-doctor/no-adjust-state-on-prop-change:
src/pages/TasksPage.tsx#L48
State adjusted in a useEffect when a prop changes — forces an extra render with a stale UI between the two commits. Adjust the state during render with a `prev`-prop comparison instead, or refactor to remove the duplicated state.
|
|
react-doctor/no-adjust-state-on-prop-change:
src/pages/SettingsPage.tsx#L79
State adjusted in a useEffect when a prop changes — forces an extra render with a stale UI between the two commits. Adjust the state during render with a `prev`-prop comparison instead, or refactor to remove the duplicated state.
|
|
react-doctor/no-adjust-state-on-prop-change:
src/pages/SettingsPage.tsx#L74
State adjusted in a useEffect when a prop changes — forces an extra render with a stale UI between the two commits. Adjust the state during render with a `prev`-prop comparison instead, or refactor to remove the duplicated state.
|
|
react-doctor/no-adjust-state-on-prop-change:
src/pages/StudioPage.tsx#L114
State adjusted in a useEffect when a prop changes — forces an extra render with a stale UI between the two commits. Adjust the state during render with a `prev`-prop comparison instead, or refactor to remove the duplicated state.
|
|
react-doctor/no-adjust-state-on-prop-change:
src/pages/StudioPage.tsx#L109
State adjusted in a useEffect when a prop changes — forces an extra render with a stale UI between the two commits. Adjust the state during render with a `prev`-prop comparison instead, or refactor to remove the duplicated state.
|
|
react-doctor/no-adjust-state-on-prop-change:
src/pages/AssetsPage.tsx#L59
State adjusted in a useEffect when a prop changes — forces an extra render with a stale UI between the two commits. Adjust the state during render with a `prev`-prop comparison instead, or refactor to remove the duplicated state.
|
|
react-doctor/no-adjust-state-on-prop-change:
src/pages/AssetsPage.tsx#L58
State adjusted in a useEffect when a prop changes — forces an extra render with a stale UI between the two commits. Adjust the state during render with a `prev`-prop comparison instead, or refactor to remove the duplicated state.
|
|
react-doctor/no-adjust-state-on-prop-change:
src/pages/AssetsPage.tsx#L57
State adjusted in a useEffect when a prop changes — forces an extra render with a stale UI between the two commits. Adjust the state during render with a `prev`-prop comparison instead, or refactor to remove the duplicated state.
|
|
react-doctor/no-adjust-state-on-prop-change:
src/components/OutputInspectorDialog.tsx#L54
State adjusted in a useEffect when a prop changes — forces an extra render with a stale UI between the two commits. Adjust the state during render with a `prev`-prop comparison instead, or refactor to remove the duplicated state.
|
|
react-doctor/prefer-tag-over-role:
src/pages/AssetsPage.tsx#L185
Prefer the semantic `<img>` element over `role="img"` on a generic tag.
|
|
react-doctor/no-cascading-set-state:
src/pages/AssetsPage.tsx#L55
3 setState calls in a single useEffect — consider using useReducer or deriving state
|
|
react-doctor/exhaustive-deps:
src/pages/AssetsPage.tsx#L69
React Hook `useEffect` is missing dependency `refreshAssets` — list it in the dependency array, or call the hook unconditionally.
|
|
react-doctor/rerender-state-only-in-handlers:
src/pages/AssetsPage.tsx#L51
useState "refreshKey" is updated but never read in the component's return — use useRef so updates don't trigger re-renders
|
|
react-doctor/prefer-useReducer:
src/pages/AssetsPage.tsx#L43
Component "AssetsPage" has 9 useState calls — consider useReducer for related state
|
|
react-doctor/prefer-tag-over-role:
src/components/OutputInspectorDialog.tsx#L109
Prefer the semantic `<img>` element over `role="img"` on a generic tag.
|
|
react-doctor/prefer-html-dialog:
src/components/OutputInspectorDialog.tsx#L88
Use the native `<dialog>` element instead of `role="dialog"` on a generic container — `<dialog>` ships built-in focus trap, `Escape` dismissal, the top-layer backdrop, and the right accessibility tree without you having to wire any of it up.
|
|
react-doctor/no-reset-all-state-on-prop-change:
src/components/OutputInspectorDialog.tsx#L53
Avoid resetting all state when a prop changes. Instead, if "selection" is a key, pass it as `key` so React will reset the component's state.
|
|
react-doctor/no-derived-state-effect:
src/components/OutputInspectorDialog.tsx#L53
State reset in useEffect — use a key prop to reset component state when props change
|
|
react-doctor/prefer-use-effect-event:
src/components/OutputInspectorDialog.tsx#L51
"onClose" is read only inside `addEventListener` — wrap it with useEffectEvent and remove it from the dep array so the effect doesn't re-synchronize on every parent render
|