【问题标题】:eslint / eslint-plugin-react: <form action="Javascript:void(0)" > - no-script-url erroreslint / eslint-plugin-react: <form action="Javascript:void(0)" > - no-script-url 错误
【发布时间】:2015-12-31 02:57:12
【问题描述】:

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

Eslint 在抱怨:

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

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

我怎样才能放宽这条规则,或者什么可以替代 javascript void 函数?

【问题讨论】:

  • 你也可以使用 // eslint-disable-line no-script-url 来禁用一行规则

标签: javascript reactjs eslint


【解决方案1】:

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

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

Source

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

【讨论】:

【解决方案2】:

我禁用了它:

"no-script-url": 0

【讨论】:

  • 嗨,你能分享一下配置吗,你把这条线放在哪里了。我在 .eslintrc 和 eslintrc.json 中都试过了,但都不起作用。谢谢
【解决方案3】:

实际上禁用它是错误的,因为javascript:就像浏览器的eval,而众所周知的eval是邪恶的。

或者,您不需要放置 action 属性。 preventDefault 在您的 join 方法中代替。 例如;

function join(e){
  e.preventDefault();
  //...
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-27
    • 2018-04-21
    • 2017-09-13
    • 1970-01-01
    • 2016-06-12
    • 2019-08-12
    • 2018-07-04
    • 2018-05-26
    相关资源
    最近更新 更多