找不到模块 'sass' - Heroku Deploy

Cannot find module 'sass' - Heroku Deploy

我刚刚通过 Heroku 部署了一个应用程序,运行 出现下面列出的错误。我正在使用 create-react-app。此应用程序在开发服务器中运行良好。我只在尝试部署时遇到问题。

我确保安装了 sass 而不是 node-sass,因为我了解到 node-sass 已被弃用。

我已经通读了 Whosebug 上的多个页面,包括这一页

然而,在阅读了所有这些答案后,我无法找到解决方案。

Failed to compile

./src/index.scss (./node_modules/css-loader/dist/cjs.js??ref--5-oneOf-6-1!./node_modules/postcss-loader/src??postcss!./node_modules/resolve-url-loader??ref--5-oneOf-6-3!./node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-6-4!./src/index.scss)
Cannot find module 'sass'
Require stack:
- /app/node_modules/sass-loader/dist/utils.js
- /app/node_modules/sass-loader/dist/index.js
- /app/node_modules/sass-loader/dist/cjs.js
- /app/node_modules/loader-runner/lib/loadLoader.js
- /app/node_modules/loader-runner/lib/LoaderRunner.js
- /app/node_modules/webpack/lib/NormalModule.js
- /app/node_modules/webpack/lib/NormalModuleFactory.js
- /app/node_modules/webpack/lib/Compiler.js
- /app/node_modules/webpack/lib/webpack.js
- /app/node_modules/react-scripts/scripts/start.js

This error occurred during the build time and cannot be dismissed.

Package.json

{
  "name": "create-react-app",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "@testing-library/jest-dom": "^5.14.1",
    "@testing-library/react": "^11.2.7",
    "@testing-library/user-event": "^12.8.3",
    "cors": "^2.8.5",
    "dotenv": "^8.2.0",
    "express": "^4.17.1",
    "nodemailer": "^6.6.3",
    "nodemailer-mailgun-transport": "^2.1.3",
    "nodemon": "^2.0.12",
    "react": "^17.0.2",
    "react-dom": "^17.0.2",
    "react-google-recaptcha": "^2.1.0",
    "react-router-dom": "^6.0.2",
    "react-scripts": "^4.0.3",
    "web-vitals": "^1.1.2"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject",
    "watch": "nodemon server.js"
  },
  "eslintConfig": {
    "extends": [
      "react-app",
      "react-app/jest"
    ]
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  },
  "devDependencies": {
    "sass": "^1.45.0"
  }
}

如果有人要求并且人们认为需要更多代码,我可以 post 它。

我认为这是因为您的 sass 模块处于开发依赖项下。尝试改变它。不幸的是我不能发表评论,因为我的排名不够高,但应该可以解决这个问题

"devDependencies": {
    "sass": "^1.45.0"

^^应该在dependencies,

devDependencies 使用开发服务器启动,但不使用构建服务器启动。