提问者:小点点

错误:不使用 <img>。请改用“下一个/图片”中的图片。- 接下来.js使用 html 标记 <img /> ( 带有样式组件)


我知道在Next中.js我们有Image组件,但是我遇到的问题是我不能将其用作普通的HTML标签,例如

所以我刚刚安装了next-Image,这样我就可以导入图像并使用它们,当然一切正常,直到我npm运行构建登录页面以查看一些结果,并且有这个警告:

Failed to compile.

./components/Presentation/Presentation.js
77:13  Error: Do not use <img>. Use Image from 'next/image' instead. See https://nextjs.org/docs/messages/no-img-element.  @next/next/no-img-element

Need to disable some ESLint rules? Learn more here: https://nextjs.org/docs/basic-features/eslint#disabling-rules

npm ERR! code ELIFECYCLE

这就是我对样式化组件使用< code>img标记的地方:

<PresentationUnderText2 src="/underText-Presentation.png" alt="" />
<PresentationScissor2   src="/scissors.svg"alt=""/>

我该怎么做才能正常使用 img 标签?


共3个答案

匿名用户

从下一步。js 11,ESLint得到了开箱即用的支持,现在提供了一组新的规则,包括@next/next/noimg元素规则。

您可以在 .eslintrc 文件中禁用此特定 ESLint 规则,就像禁用任何其他规则一样。

{
  // ...
  "rules": {
    // Other rules
    "@next/next/no-img-element": "off"
  }
}

匿名用户

我没有 .eslintrc 文件。相反,我将这一行放在页面或组件的顶部

/* eslint-disable @next/next/no-img-element */

匿名用户

执行错误消息告诉您的操作:

导入NextJS图像组件:

从“next/Image”导入图像

然后在代码中找到 img 组件:

<代码>

然后用NextJS图像组件替换它:

<代码>

参见:https://nextjs.org/docs/messages/no-img-element