推送到heroku时无法读取未定义的属性“match”

imzjd6km  于 2023-02-04  发布在  其他
关注(0)|答案(4)|浏览(85)

尝试将项目推送到heroku-使用heroku-cli和连接到Github时出现相同的错误。
错误日志:

-----> Building dependencies

       Installing node modules (package.json + package-lock)

       npm ERR! Cannot read property 'match' of undefined

Package.json

{
  "name": "myApp",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "react": "^16.7.0",
    "react-dom": "^16.7.0",
    "react-router-dom": "^4.3.1",
    "react-scripts": "2.1.3",
    "react-social-icons": "^4.1.0",
    "react-spring": "^7.2.10"
  },
...
  "eslintConfig": {
    "extends": "react-app"
  },
  "engines": {
    "node": "10.13.0"
  },
...
  "devDependencies": {
    "react": "^16.7.0"
  }
}

React最初并不在devDependencies中--将其作为修复早期错误的尝试。
问题仍然存在。

k5hmc34c

k5hmc34c1#

我也遇到了同样的问题,但是上面提到的解决方案都不适用于我,我甚至试着清理我的远程存储库,使用heroku-存储库插件,顺便说一句,你可以使用heroku插件安装:安装heroku-存储库,然后安装heroku存储库:重置-一个应用程序名来试试运气。
对我有效的解决方案是从Heroku禁用node_modules缓存,Heroku维护一个在构建之间持久化的缓存目录,这个缓存用于存储npm、yarn和bower的缓存。
尝试使用以下步骤。
1.heroku配置:设置节点模块缓存=假
1.现在使用-git push heroku master命令再次推送

hs1rzwqc

hs1rzwqc2#

检查包锁. json

此问题很可能与您的package-lock.json有关。此文件会导致很多问题,但建议您使用check it into source
话虽如此,以下两件事中的一件应该可以解决您的问题:
1.首先尝试在本地删除package-lock.jsonnode_modules,然后重新安装所有依赖项:npm i。请在此操作完成后再次尝试推送到Heroku。
1.如果上面的建议不起作用,只需在本地删除您的package-lock.json文件,提交您的更改,然后尝试再次推送到Heroku。
另外,你不应该把react作为开发依赖项列出,你可以从你的package.json中删除它。

nnvyjq4y

nnvyjq4y3#

您可能想要从您的终端执行此heroku config:set NODE_MODULES_CACHE=false。这是为我们工作的这个相同的错误。

2eafrhcq

2eafrhcq4#

请删除锁定文件,然后重试,它将工作。

相关问题