版本

no-alert

禁止使用 `alert`、`confirm` 和 `prompt`

JavaScript 的 `alert`、`confirm` 和 `prompt` 函数被广泛认为是侵入性的 UI 元素,应该被更合适的自定义 UI 实现所取代。此外,`alert` 通常在调试代码时使用,应该在部署到生产环境之前删除。

alert("here!");

规则详情

此规则旨在捕获应该删除的调试代码和应该用不太侵入性的自定义 UI 替换的弹出 UI 元素。因此,它将在遇到未被遮蔽的 `alert`、`prompt` 和 `confirm` 函数调用时发出警告。

此规则的 **不正确** 代码示例

在游乐场中打开
/*eslint no-alert: "error"*/

alert("here!");

confirm("Are you sure?");

prompt("What's your name?", "John Doe");

此规则的 **正确** 代码示例

在游乐场中打开
/*eslint no-alert: "error"*/

customAlert("Something happened!");

customConfirm("Are you sure?");

customPrompt("Who are you?");

function foo() {
    var alert = myCustomLib.customAlert;
    alert();
}

版本

此规则是在 ESLint v0.0.5 中引入的。

资源

更改语言