如果是我不了解的Gatsby,webpack或npm问题。
我在终端中执行了这些命令,它们似乎已经开始出现问题,试图修复具有“无法找到模块”错误的material-ui“ Popper”模块。
npm install react-popper@next --save
npm install avj
npm install --save-dev webpack
npm install & npm update
端子:
错误加载本地开发命令时出现问题。盖茨比 可能未安装。也许您需要运行“ npm install”?
package.json
{
"name": "auto-club-reviews",
"description": "Auto Club Reviews Blog",
"version": "1.0.0",
"author": "Sofianu Alin",
"dependencies": {
"@material-ui/core": "^1.4.3",
"@material-ui/icons": "^1.1.0",
"gatsby": "^1.9.277",
"gatsby-link": "^1.6.46",
"gatsby-plugin-feed": "^1.3.25",
"gatsby-plugin-google-analytics": "^1.0.31",
"gatsby-plugin-offline": "^1.0.18",
"gatsby-plugin-react-helmet": "^2.0.11",
"gatsby-plugin-react-next": "^1.0.11",
"gatsby-plugin-sharp": "^1.6.48",
"gatsby-plugin-typography": "^1.7.19",
"gatsby-remark-copy-linked-files": "^1.5.37",
"gatsby-remark-images": "^1.5.67",
"gatsby-remark-responsive-iframe": "^1.4.20",
"gatsby-remark-smartypants": "^1.4.12",
"gatsby-source-contentful": "^1.3.54",
"gatsby-source-filesystem": "^1.5.39",
"gatsby-transformer-remark": "^1.7.44",
"gatsby-transformer-sharp": "^1.6.27",
"lodash": "^4.17.10",
"react": "^16.4.2",
"react-dom": "^16.4.2",
"react-helmet": "^5.2.0",
"react-hover": "^1.3.2",
"react-popper": "^1.0.2",
"typeface-roboto": "0.0.54"
},
"devDependencies": {
"eslint": "^5.3.0",
"eslint-plugin-react": "^7.10.0",
"gh-pages": "^1.2.0",
"html-webpack-plugin": "^3.2.0",
"prettier": "^1.14.2",
"webpack": "^4.16.5",
"webpack-command": "^0.4.1",
"webpack-dev-middleware": "^3.1.3",
"webpack-dev-server": "^3.1.5"
},
"homepage": "https://github.com/gatsbyjs/gatsby-starter-blog#readme",
"keywords": [
"gatsby"
],
"license": "MIT",
"main": "n/a",
"repository": {
"type": "git",
"url": "git+https://github.com/gatsbyjs/gatsby-starter-blog.git"
},
"scripts": {
"dev": "gatsby develop",
"lint": "./node_modules/.bin/eslint --ext .js,.jsx --ignore-pattern public .",
"test": "echo \"Error: no test specified\" && exit 1",
"format": "prettier --trailing-comma es5 --no-semi --single-quote --write 'src/**/*.js' 'src/**/*.md'",
"develop": "gatsby develop",
"build": "gatsby build",
"deploy": "gatsby build --prefix-paths && gh-pages -d public",
"fix-semi": "eslint --quiet --ignore-pattern node_modules --ignore-pattern public --parser babel-eslint --no-eslintrc --rule '{\"semi\": [2, \"never\"], \"no-extra-semi\": [2]}' --fix gatsby-node.js"
}
}
也试图:
先删除node_modules,然后再进行npm install;
卸载“ webpack-cli”:“ ^ 3.1.0”并安装webpack-commander;
卸载似乎在终端上抱怨的extract-text-webpack-plugin;
有任何同志吗?
答案 0 :(得分:2)
您是否正在尝试Gatsby v2?您的package.json
显示了React v16,它是Gatsby v2的peerDependency
,而不是Gatsby v1的package.json
。在Gatsby v1(这是package.json
中的版本)中,您不应该直接安装React,它是作为Gatsby的依赖项安装的。
Webpack还是v1和v2的Gatsby依赖项。我认为您不应该将它作为顶级依赖项放在gatsby-node.js
中。
我建议从干净的Gatsby入门开始,然后将gatsby-config.js
,package.json
,组件,内容等复制到该项目中。保留npm install --save
文件。然后对您显式import
或require
的每个程序包运行yarn
。希望您能回到工作现场。
我个人也建议在npm
之上推荐Select * from person where age > 18
。