Try @eslint-react/kit@beta
logoESLint React

no-dangerously-set-innerhtml

Disallows DOM elements from using 'dangerouslySetInnerHTML'.

Full Name in eslint-plugin-react-dom

react-dom/no-dangerously-set-innerhtml

Full Name in @eslint-react/eslint-plugin

@eslint-react/dom-no-dangerously-set-innerhtml

Presets

dom recommended recommended-typescript recommended-type-checked strict strict-typescript strict-type-checked

Rule Details

This should be used with extreme caution! If the HTML inside isn't trusted (for example, if it's based on user data), you risk introducing an XSS vulnerability.

Read more about using dangerouslySetInnerHTML.

Examples

Using dangerouslySetInnerHTML to render raw HTML

Using dangerouslySetInnerHTML bypasses React's built-in XSS protections and should be avoided whenever possible.

// Problem: dangerouslySetInnerHTML exposes the application to XSS risks.
function MyComponent() {
  return <div dangerouslySetInnerHTML={{ __html: "Hello, World!" }} />;
}

Versions

Resources

Further Reading


See Also

On this page