react/jsx-no-script-url 可疑
它的作用
禁止使用 javascript: URL。
为什么这是个问题?
以 javascript: 开头的 URL 是一个危险的攻击面,因为很容易意外地在 <a href> 等标签中包含未经清理的输出,从而造成安全漏洞。
从 React 16.9 开始,任何以 javascript: 开头的 URL 都会触发警告。
在 React 19 中,javascript: URL 已被完全禁止。
示例
此规则的错误代码示例:
jsx
<a href="javascript:void(0)">测试</a>此规则的正确代码示例:
jsx
<Foo test="javascript:void(0)" />配置
此规则接受一个配置对象,包含以下属性:
components
type: Record<string, array>
default: {}
额外需要检查的组件。
includeFromSettings
type: boolean
default: false
是否包含来自设置中的组件。
如何使用
要通过配置文件或 CLI 启用此规则,可以使用:
json
{
"plugins": ["react"],
"rules": {
"react/jsx-no-script-url": "error"
}
}bash
oxlint --deny react/jsx-no-script-url --react-plugin