警告:React 的未来版本将阻止 javascript

Ser*_*MAN 5 reactjs redux next.js

我从 gitlab 克隆了 repo 并安装了依赖项,然后当我yarn next dev从命令行输入时,我得到

index.js:1 Warning: A future version of React will block javascript: URLs as a security precaution. Use event handlers instead if you can. If you need to generate unsafe HTML try using dangerouslySetInnerHTML instead. React was passed "javascript:;" 
Run Code Online (Sandbox Code Playgroud)

错误。在浏览器中,我code 404在登陆页面上出错。出了什么问题,我无法克服。

Mac*_*wak 11

似乎在这段代码的某个地方,你有一个元素,它的属性中的某个地方有一个显式的 javascript 代码。类似的东西

<a href="javascript:;" ...>...</a>
Run Code Online (Sandbox Code Playgroud)

正如警告中提到的:React was passed "javascript:;"。这可能是一些旧的 repo,它使用来摆脱<a>不会导致任何地方的标签。对此更常见的解决方案是 usig href='#'

但是,您获得的 404 可能意味着更多,并且回购本身可能已损坏。

  • `&lt;a href={undefined} ... &gt;` 也有效! (3认同)
  • 您可以将按钮设置为看起来像 &lt;a&gt; 标记。 (2认同)
  • @Nawaz 你刚刚让我损失了 10 分钟。它不起作用,它破坏了 &lt;a&gt; 标签的整个功能。 (2认同)