我的React应用程序的构建过程出现问题。
我总是收到以下错误:
找不到模块:错误:无法解析“ core-js / es6”
如果我在polyfill.js中使用它:
导入'core-js / es6';
那就是我的package.json:
{
"name": "test",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"private": true,
"devDependencies": {
"@babel/core": "^7.4.0",
"@babel/preset-env": "^7.4.2",
"@babel/preset-react": "^7.0.0",
"@babel/runtime": "^7.4.2",
"babel-loader": "^8.0.5",
"babel-preset-es2015": "^6.24.1",
"copy-webpack-plugin": "^5.0.2",
"css-hot-loader": "^1.4.4",
"eslint": "5.15.3",
"eslint-config-airbnb": "^17.1.0",
"eslint-loader": "^2.1.2",
"eslint-plugin-import": "2.16.0",
"eslint-plugin-jsx-a11y": "6.2.1",
"eslint-plugin-react": "7.12.4",
"file-loader": "^3.0.1",
"node-sass": "^4.11.0",
"prettier": "^1.16.4",
"react-hot-loader": "4.8.0",
"sass-loader": "^7.1.0",
"webpack": "^4.29.6",
"webpack-cli": "^3.3.0",
"webpack-dev-server": "^3.2.1"
},
"dependencies": {
"axios": "^0.18.0",
"core-js": "^3.0.0",
"prop-types": "^15.7.2",
"react": "^16.8.5",
"react-dom": …
Run Code Online (Sandbox Code Playgroud)当多个git分支修改使用Yarn的项目中的依赖项时,很可能会在yarn.lock文件中引入冲突.删除和重新生成yarn.lock文件不是一个好主意,因为这可能会导致无意中升级多个包.快速解决此文件中的冲突的最佳方法是什么?
我尝试了一些可能的CLI命令,但似乎没有一个实际更新安装的软件包yarn global add
.
yarn global upgrade
&yarn upgrade global
都无法正常工作.有没有办法升级全球套餐?
在宣布纱线(替代npm客户端)的博客文章中,他们说,"最简单的入门方式就是运行npm install -g yarn
".但是如果你去他们的文档中的"安装纱线"页面,"npm install yarn"没有列在任何特定于平台的安装页面上,它只作为"Alternatives"页面上三个选项中的第三个提供.此外,当您使用npm install
纱线时,它会打印一个弃用警告,"建议使用您环境的本机安装方法安装Yarn." 所以我的问题是,如果npm install
是最简单的安装方法,为什么它不是他们的文档中推荐的方法?使用纱线有缺点npm
吗?
yarn install -h
表明-g
(全局)选项是DEPRECATED
.我该如何表明我想在全局安装一堆软件包(来自package.json
/ yarn.lock
files)?
我看到的选项:
yarn global [command]
有事情ls
,add
但有,但没有install
.add
如果我理解正确,只适用于特定的包名称.我已经yarn.lock
准备好了我的文件,我不想在命令行上重复自己.yarn global add
每个包一个接一个.现在我的包列表将是必要的而不是声明性的.特别是,我想使用其中一个包中的一个可执行文件.
我按照 Yarn 网站 ( https://yarnpkg.com/getting-started/install ) 上的 Yarn 安装说明进行操作。这些说明表明,在 Node 版本 16.10.0 及更高版本上,您可以通过使用以下命令启用 corepack 来安装 Yarn:
corepack enable
Run Code Online (Sandbox Code Playgroud)
但是,运行该命令会返回:
zsh: command not found: corepack
Run Code Online (Sandbox Code Playgroud)
我通过 Homebrew 安装了 Node 并node -v
返回v17.0.1
. 我使用的是运行 Big Sur 的 M1 Mac。
题
这是一种package-lock.json
无需真正安装node_modules
(如npm i
)即可更新/生成的方法吗?我只需要一个package-lock.json
基于我的有效package.json
,就是这样。
动机
您(或您的同事)可能会使用yarn
本地,当CI服务器使用npm
。这可能不是最佳实践,但仍可能出于某些原因。
在一个完美的世界中,我想要一个命令来更新 package-lock.json
额外问题:对于yarn
. 有没有办法在yarn-lock.json
没有模块安装的情况下生成(yarn install
)?
最近我尝试用Yarn安装我的Node包.它运行良好,比NPM快得多.纱线自动生成yarn.lock
.我们已经有了NPM shrinkwrap(npm-shrinkwrap.json
).
它们之间有什么区别吗?是否yarn.lock
有过NPM-shrinkwrap.json什么优势?
我正在使用 gatsby 创建一个新项目
gatsby new YourProjectName2 https://github.com/Vagr9K/gatsby-advanced-starter
并得到一个错误:
info Creating new site from git:
https://github.com/Vagr9K/gatsby-advanced-starter.git
Cloning into 'YourProjectName2'...
remote: Enumerating objects: 420, done.
remote: Counting objects: 100% (420/420), done.
remote: Compressing objects: 100% (373/373), done.
remote: Total 420 (delta 44), reused 268 (delta 22), pack-reused 0
Receiving objects: 100% (420/420), 7.74 MiB | 11.79 MiB/s, done.
success Created starter directory layout
info Installing packages...
npm ERR! code EUNSUPPORTEDPROTOCOL
npm ERR! Unsupported URL Type "workspace:": workspace:*
npm ERR! A complete log …
Run Code Online (Sandbox Code Playgroud) 我刚刚克隆了一个repo,它建议使用Yarn来安装依赖项.当我跑步时yarn install
,它似乎没问题,但它提供了这个警告:
yarn install v0.20.3
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
warning "sass-loader@4.0.2" has incorrect peer dependency "node-sass@^3.4.2".
[4/4] Building fresh packages...
? Done in 77.59s.
Run Code Online (Sandbox Code Playgroud)
我已经在网上找到了"具有不正确的对等依赖性"的确切含义.但我能找到的只是其他存储库中的问题或有关如何解决问题的问题.
有人可以解释这意味着什么,为什么它只是一个警告,而不是一个错误?
此外,我应该尝试解决或报告我刚刚克隆的回购背后的社区吗?
javascript dependencies dependency-management node-modules yarnpkg
yarnpkg ×10
npm ×7
node.js ×5
javascript ×4
node-modules ×3
dependencies ×2
build ×1
frontend ×1
git ×1
npm-install ×1
package.json ×1
yarn-v2 ×1