11

我有一个带有表单的组件:

<form action="javascript:void(0)" onSubmit={this.join}>

埃斯林特抱怨:

错误脚本 URL 是 eval no-script-url 的一种形式

注意:我也在使用“eslint-plugin-react”

我该如何放宽这条规则,或者什么可以替代 javascript void 函数?

4

3 回答 3

11

我遇到了这个问题,然后在官方 Redux 文档中看到了这种模式,这对我来说很有意义:

<a
  href=""
  onClick={e => {
    e.preventDefault()
    onClick()
  }}
>
  {children}
</a>

资源

这就是我从现在开始要做的事情。

于 2018-03-29T17:00:54.020 回答
7

我禁用了它:

"no-script-url": 0
于 2015-10-02T20:26:28.520 回答
2

实际上禁用它是错误的,因为javascript:就像浏览器的 eval 一样,正如人们所知,eval 是邪恶的。

或者,您不需要放置action道具。preventDefault在你的join方法中。例如;

function join(e){
  e.preventDefault();
  //...
}
于 2016-08-21T02:08:49.533 回答