모듈을 찾을 수 없음 : Vercel에 배포 할 때 '/ vercel / 2d531da8 / node_modules / mysql / lib / protocol / sequences'에서 'fs'를 확인할 수 없습니다.

Stephen89

Vercel에 배포 할 때 다음 오류가 발생합니다.

Module not found: Can't resolve 'fs' in '/vercel/2d531da8/node_modules/mysql/lib/protocol/sequences'

종속성 fs를 사용하지 않고 내 package.json 파일은 다음과 같습니다.

{
"name": "single",
"version": "0.1.0",
"private": true,
"scripts": {
"dev": "next dev",
"build": "next build",
"start": "next start"
},
"dependencies": {
"mysql": "^2.18.1",
"next": "^9.4.4",
"react": "^16.13.1",
"react-dom": "^16.13.1",
"serverless-mysql": "^1.5.4",
"sql-template-strings": "^2.2.2"
}
}

저는 NextJS를 처음 접했기 때문에 무슨 일이 일어나고 있는지 잘 모르겠습니다. 어떤 아이디어?


편집하다:

컨텍스트를 위해 앱의 mySQL에서 데이터를 얻습니다. 오류와 관련이 있는지 확실하지 않습니다.

export async function getStaticProps() {
const db = require('./lib/db')
const escape = require('sql-template-strings')
const articles = await db.query(escape`
SELECT *
  FROM articles
  ORDER BY pid
`)
 const var1 = JSON.parse(JSON.stringify({ articles }))



return {
    props: {
        var1,
    },
}
}
Stephen89

next.config.js 파일을 만들고 다음을 추가하여 문제를 해결했습니다.

module.exports = {
webpack: (config, { buildId, dev, isServer, defaultLoaders, webpack }) => {
    // Note: we provide webpack above so you should not `require` it
    // Perform customizations to webpack config
    // Important: return the modified config

    // Example using webpack option
    //config.plugins.push(new webpack.IgnorePlugin(/\/__tests__\//))
    config.node = {
        fs: 'empty',
        net: 'empty',
        tls: 'empty'
    }
    return config
},
webpackDevMiddleware: config => {
    // Perform customizations to webpack dev middleware config
    // Important: return the modified config
    return config
},
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관