Skip to content

[Bug]: react/jsx-no-literals is not compatible with for-of loop #3919

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
2 tasks done
ARiyou2000 opened this issue Apr 29, 2025 · 0 comments
Open
2 tasks done

[Bug]: react/jsx-no-literals is not compatible with for-of loop #3919

ARiyou2000 opened this issue Apr 29, 2025 · 0 comments
Labels

Comments

@ARiyou2000
Copy link

Is there an existing issue for this?

  • I have searched the existing issues and my issue is unique
  • My issue appears in the command-line and not only in the text editor

Description Overview

The config:

"react/jsx-no-literals": [
     "warn",
      {
            noStrings: false,
            ignoreProps: true,
            allowedStrings: [],
            noAttributeStrings: false,
            elementOverrides: {
              Trans: {
                allowElement: true,
                // applyToNestedElements: true
              },
        },
    }
}

The line that caused the problem (line 406 in logs)

    for (const training of formData.trainings) {
      if (!training.name.trim()) {
        toast.error("All training modules must have a name");
        return;
      }

      if (!training.description.trim()) {
        toast.error("All training modules must have a description");
        return;
      }
    }

How I fixed it:

  formData.trainings.forEach((training) => {
      if (!training.name.trim()) {
        toast.error("All training modules must have a name");
        return;
      }

      if (!training.description.trim()) {
        toast.error("All training modules must have a description");
        return;
      }
    });

ESLint error logs:

[Error - 2:23:49 AM] An unexpected error occurred:
[Error - 2:23:49 AM] TypeError: Cannot read properties of null (reading 'type')
Occurred while linting /home/ariyou2000/Documents/projects/lingualinq/lingualinq/libs/components/src/course/course-creation-form.tsx:406
Rule: "react/jsx-no-literals"
    at isRequireStatement (/home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint-plugin-react@7.37.4_eslint@9.23.0_jiti@2.4.2_/node_modules/eslint-plugin-react/lib/rules/jsx-no-literals.js:188:16)
    at /home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint-plugin-react@7.37.4_eslint@9.23.0_jiti@2.4.2_/node_modules/eslint-plugin-react/lib/rules/jsx-no-literals.js:443:16
    at Array.filter (<anonymous>)
    at VariableDeclaration (/home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint-plugin-react@7.37.4_eslint@9.23.0_jiti@2.4.2_/node_modules/eslint-plugin-react/lib/rules/jsx-no-literals.js:441:12)
    at ruleErrorHandler (/home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint@9.23.0_jiti@2.4.2/node_modules/eslint/lib/linter/linter.js:1311:33)
    at /home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint@9.23.0_jiti@2.4.2/node_modules/eslint/lib/linter/safe-emitter.js:45:46
    at Array.forEach (<anonymous>)
    at Object.emit (/home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint@9.23.0_jiti@2.4.2/node_modules/eslint/lib/linter/safe-emitter.js:45:26)
    at NodeEventGenerator.applySelector (/home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint@9.23.0_jiti@2.4.2/node_modules/eslint/lib/linter/node-event-generator.js:338:17)
    at NodeEventGenerator.applySelectors (/home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint@9.23.0_jiti@2.4.2/node_modules/eslint/lib/linter/node-event-generator.js:382:10)
    at NodeEventGenerator.enterNode (/home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint@9.23.0_jiti@2.4.2/node_modules/eslint/lib/linter/node-event-generator.js:396:8)
    at runRules (/home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint@9.23.0_jiti@2.4.2/node_modules/eslint/lib/linter/linter.js:1362:22)
    at #flatVerifyWithoutProcessors (/home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint@9.23.0_jiti@2.4.2/node_modules/eslint/lib/linter/linter.js:2290:22)
    at Linter._verifyWithFlatConfigArrayAndWithoutProcessors (/home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint@9.23.0_jiti@2.4.2/node_modules/eslint/lib/linter/linter.js:2381:43)
    at Linter._verifyWithFlatConfigArray (/home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint@9.23.0_jiti@2.4.2/node_modules/eslint/lib/linter/linter.js:2484:15)
    at Linter.verify (/home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint@9.23.0_jiti@2.4.2/node_modules/eslint/lib/linter/linter.js:1840:10)
    at Linter.verifyAndFix (/home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint@9.23.0_jiti@2.4.2/node_modules/eslint/lib/linter/linter.js:2749:20)
    at verifyText (/home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint@9.23.0_jiti@2.4.2/node_modules/eslint/lib/eslint/eslint.js:336:45)
    at ESLint.lintText (/home/ariyou2000/Documents/projects/lingualinq/lingualinq/node_modules/.pnpm/eslint@9.23.0_jiti@2.4.2/node_modules/eslint/lib/eslint/eslint.js:977:5)
    at async /home/ariyou2000/.cursor/extensions/dbaeumer.vscode-eslint-3.0.10/server/out/eslintServer.js:1:26981
    at async M (/home/ariyou2000/.cursor/extensions/dbaeumer.vscode-eslint-3.0.10/server/out/eslintServer.js:1:19807)
    at async /home/ariyou2000/.cursor/extensions/dbaeumer.vscode-eslint-3.0.10/server/out/eslintServer.js:1:234554
    at async /home/ariyou2000/.cursor/extensions/dbaeumer.vscode-eslint-3.0.10/server/out/eslintServer.js:1:63886

Expected Behavior

eslint-plugin-react version

7.37.4

eslint version

^9.23.0

node version

v20.18.3

@ARiyou2000 ARiyou2000 added the bug label Apr 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

No branches or pull requests

1 participant