NextJs - 禁止外部同步脚本

jpk*_*jpk 13 javascript reactjs next.js

我正在使用 nextJs 版本 11.x

当尝试包含如下所示的外部脚本时,执行纱线构建时出现错误。

<Head>
<link rel="stylesheet" type="text/css" href="http://www.externalsite.com/style.css" />
<script src="https://www.websote.com/viewer.min.js"></script>
</Head>
Run Code Online (Sandbox Code Playgroud)

错误 :

./pages/_app.js
63:17  Error: External synchronous scripts are forbidden. See: https://nextjs.org/docs/messages/no-sync-scripts.  @next/next/no-sync-scripts
Run Code Online (Sandbox Code Playgroud)

我正在使用 eslint。

那么,我们如何包含这个外部js呢?

jpk*_*jpk 17

解决了问题。

这是由于 eslint 严格配置而发生的。现在我将其更改为 Base。

修改的内容在这个文件.eslintrc中

早些时候的价值是

   {
   "extends": "next/core-web-vitals"
   }
Run Code Online (Sandbox Code Playgroud)

现将内容改为

 {
 "extends": "next"
 }
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助


小智 11

import Script from 'next/script'

const Home = () => {
    return (
      <div class="container">
        <Script src="https://third-party-script.js"></Script>
        <div>Home Page</div>
      </div>
    )
}

export default Home
Run Code Online (Sandbox Code Playgroud)