Skip to content
← Back to rules

react/no-danger-with-children Correctness

An auto-fix is available for this rule.

它的作用

当 DOM 元素同时使用 childrendangerouslySetInnerHTML 属性时,禁止这种写法。

为什么这不好?

如果忽略此规则并同时使用 childrendangerouslySetInnerHTML,React 会抛出警告。

示例

此规则的错误代码示例:

jsx
<div dangerouslySetInnerHTML={{ __html: "HTML" }}>Children</div>;
React.createElement("div", { dangerouslySetInnerHTML: { __html: "HTML" } }, "Children");

此规则的正确代码示例:

jsx
<div>Children</div>
<div dangerouslySetInnerHTML={{ __html: "HTML" }} />

如何使用

To enable this rule using the config file or in the CLI, you can use:

json
{
  "plugins": ["react"],
  "rules": {
    "react/no-danger-with-children": "error"
  }
}
ts
import { defineConfig } from "oxlint";

export default defineConfig({
  plugins: ["react"],
  rules: {
    "react/no-danger-with-children": "error",
  },
});
bash
oxlint --deny react/no-danger-with-children --react-plugin

版本

此规则已在 v0.9.6 中添加。

参考资料