什么是纱线?
Yarn 是一个替代 npm 客户端,用于将 JavaScript 作为包管理器,由 Facebook 团队开发。 它还允许我们与世界各地的其他开发人员共享代码并使用其他开发人员的解决方案。 代码本身通过包分发,有时也称为模块。 该包包含一个 .package.json 文件,该文件描述了内容以及所有相关的分布式代码。 与 npm 相比,Yarn 被认为是更好的替代品,并且在以下参数上超过了 NPM:
- 与标准客户端相比的速度,而在比较和测试中,Yarn 的速度要快两到三倍。
- 安装的可靠性。 可靠性更好的原因有两个:
- 短期的计算机网络问题会导致接收数据包失败。
- 当发布新版本的软件包时,可能会有与其他软件包不兼容的更改,这可能会破坏应用程序。 Yarn 解决了这两个问题并轻松解决了它们。
- Yarn 还与 Npm 和 Bower 兼容。
先决条件
在安装 Yarn 之前必须安装 Node.js。 我们可以使用 Windows 终端或 powershell 验证我们的系统上是否安装了 node.js。
1.按Win+R键打开终端,然后输入cmd。
2. 使用命令行,我们可以使用以下命令验证是否安装了 Node.js:
C:Windowssystem32>node -v‘ node’ is not recognized as an internal or external command, operable program or batch file. C:Windowssystem32>
如果我们没有安装 node.js,我们可以去主 node.js 网站和 下载安装程序.
![纱线安装3](/wp-content/uploads/2022/06/1641222802.jpg)
接下来,我们需要运行安装程序。
![纱线安装4](/wp-content/uploads/2022/06/1641222804.png)
现在,我们应该接受许可协议。
![纱线安装6](/wp-content/uploads/2022/06/1641222805.png)
现在,保留所有默认设置并单击下一步以安装 node.js。
![纱线安装5](/wp-content/uploads/2022/06/1641222806.png)
最后点击Finish,完成安装。 现在我们可以重新运行我们的命令来验证 node.js 是否正确安装,在终端中使用以下命令:
C:Windowssystem32>node --version V14.3.0 C:Windowssystem32
纱线安装
微星安装
我们将用来安装 Yarn 的第一种方法是 下载 Yarn .msi 安装程序 来自 纱线官方网站 并将其安装在我们的本地计算机上。
![纱线安装7](/wp-content/uploads/2022/06/1641222806.jpg)
接下来,我们将运行 .msi 安装程序。
![纱线安装8](/wp-content/uploads/2022/06/1641222808.png)
现在,接受许可协议。
![纱线安装9](/wp-content/uploads/2022/06/1641222809.png)
然后,单击安装。
![纱线安装10](/wp-content/uploads/2022/06/1641222810.png)
最后,单击“完成”按钮。
![纱线安装11](/wp-content/uploads/2022/06/1641222811.png)
现在,我们可以使用以下 CLI 命令验证 Yarn 是否已安装。
C:Windowssystem32>yarn --version 1.22.4 C:Windowssystem32>
巧克力安装
另一种安装 Yarn 的方法是使用适用于 Windows 的 Chocolatey 包管理器。 这种方法很方便,因为Chocolatey 会判断node.js 是否已经安装,如果没有,它会自动为我们安装。 以管理员身份做所有事情很重要。 这里有 安装 Chocolatey 的说明.
设置 Chocolatey 后,我们可以使用以下命令安装 Yarn。
C:Windowssystem32>choco install yarn Chocolatey v0.10.15 Installing the following packages: yarn By installing you accept licenses for the packages. yarn v1.22.4 [Approved] yarn package files install completed. Performing other installation steps. The package yarn wants to run 'chocolateyinstall.ps1'. Note: If you don't run this script, the installation will fail. Note: To confirm automatically next time, use '-y' or consider: choco feature enable -n allowGlobalConfirmation Do you want to run the script?([Y]es/[A]ll - yes to all/[N]o/[P]rint): Y Downloading yarn from 'https://yarnpkg.com/downloads/1.22.4/yarn-1.22.4.msi' Progress: 100% - Completed download of C:UsersDmitryAppDataLocalTempchocolateyyarn1.22.4yarn-1.22.4.msi (1.57 MB). Download of yarn-1.22.4.msi (1.57 MB) completed. Hashes match. Installing yarn... yarn has been installed. #< CLIXML <Objs Version="1.1.0.1" xmlns="https://schemas.microsoft.com/powershell/2004/04"><Obj S="progress" RefId="0"><TN RefId="0"><T>System.Management.Automation.PSCustomObject</T><T>System.Object</T></TN><MS><I64 N="SourceId">1</I64><PR N="Record"><AV>Preparing modules for first use.</AV><AI>0</AI><Nil /><PI>-1</PI><PC>-1</PC><T>Completed</T><SR>-1</SR><SD> </SD></PR></MS></Obj><Obj S="progress" RefId="1"><TNRef RefId="0" /><MS><I64 N="SourceId">1</I64><PR N="Record"><AV>Preparing modules for first use.</AV><AI>0</AI><Nil /><PI>-1</PI><PC>-1</PC><T>Completed</T><SR>-1</SR><SD> </SD></PR></MS></Obj><S S="debug">Host version is 5.1.18362.752, PowerShell Version is '5.1.18362.752' and CLR Version is '4.0.30319.42000'.</S><S S="verbose">ing function 'Format-FileSize'.</S><S S="verbose">ing function 'Get-ChecksumValid'.</S><S S="verbose">ing function 'Get-ChocolateyUnzip'.</S><S S="verbose">ing function 'Get-ChocolateyWebFile'.</S><S S="verbose">ing function 'Get-EnvironmentVariable'.</S><S S="verbose">ing function 'Get-EnvironmentVariableNames'.</S><S S="verbose">ing function 'Get-FtpFile'.</S><S S="verbose">ing function 'Get-OSArchitectureWidth'.</S><S S="verbose">ing function 'Get-PackageParameters'.</S><S S="verbose">ing function 'Get-PackageParametersBuiltIn'.</S><S S="verbose">ing function 'Get-ToolsLocation'.</S><S S="verbose">ing function 'Get-UACEnabled'.</S><S S="verbose">ing function 'Get-UninstallRegistryKey'.</S><S S="verbose">ing function 'Get-VirusCheckValid'.</S><S S="verbose">ing function 'Get-WebFile'.</S><S S="verbose">ing function 'Get-WebFileName'.</S><S S="verbose">ing function 'Get-WebHeaders'.</S><S S="verbose">ing function 'Install-BinFile'.</S><S S="verbose">ing function 'Install-ChocolateyDesktopLink'.</S><S S="verbose">ing function 'Install-ChocolateyEnvironmentVariable'.</S><S S="verbose">ing function 'Install-ChocolateyExplorerMenuItem'.</S><S S="verbose">ing function 'Install-ChocolateyFileAssociation'.</S><S S="verbose">ing function 'Install-ChocolateyInstallPackage'.</S><S S="verbose">ing function 'Install-ChocolateyPackage'.</S><S S="verbose">ing function 'Install-ChocolateyPath'.</S><S S="verbose">ing function 'Install-ChocolateyPinnedTaskBarItem'.</S><S S="verbose">ing function 'Install-ChocolateyPowershellCommand'.</S><S S="verbose">ing function 'Install-ChocolateyShortcut'.</S><S S="verbose">ing function 'Install-ChocolateyVsixPackage'.</S><S S="verbose">ing function 'Install-ChocolateyZipPackage'.</S><S S="verbose">ing function 'Install-Vsix'.</S><S S="verbose">ing function 'Set-EnvironmentVariable'.</S><S S="verbose">ing function 'Set-PowerShellExitCode'.</S><S S="verbose">ing function 'Start-ChocolateyProcessAsAdmin'.</S><S S="verbose">ing function 'Test-ProcessAdminRights'.</S><S S="verbose">ing function 'Uninstall-BinFile'.</S><S S="verbose">ing function 'Uninstall-ChocolateyEnvironmentVariable'.</S><S S="verbose">ing function 'Uninstall-ChocolateyPackage'.</S><S S="verbose">ing function 'Uninstall-ChocolateyZipPackage'.</S><S S="verbose">ing function 'Update-SessionEnvironment'.</S><S S="verbose">ing function 'Write-ChocolateyFailure'.</S><S S="verbose">ing function 'Write-ChocolateySuccess'.</S><S S="verbose">ing function 'Write-FileUpdateLog'.</S><S S="verbose">ing function 'Write-FunctionCallLogMessage'.</S><S S="verbose">ing alias 'Get-ProcessorBits'.</S><S S="verbose">ing alias 'Get-OSBitness'.</S><S S="verbose">ing alias 'Get-InstallRegistryKey'.</S><S S="verbose">ing alias 'Generate-BinFile'.</S><S S="verbose">ing alias 'Add-BinFile'.</S><S S="verbose">ing alias 'Start-ChocolateyProcess'.</S><S S="verbose">ing alias 'Invoke-ChocolateyProcess'.</S><S S="verbose">ing alias 'Remove-BinFile'.</S><S S="verbose">ing alias 'refreshenv'.</S><S S="verbose">ing function 'Format-FileSize'.</S><S S="verbose">ing function 'Get-ChecksumValid'.</S><S S="verbose">ing function 'Get-ChocolateyUnzip'.</S><S S="verbose">ing function 'Get-ChocolateyWebFile'.</S><S S="verbose">ing function 'Get-EnvironmentVariable'.</S><S S="verbose">ing function 'Get-EnvironmentVariableNames'.</S><S S="verbose">ing function 'Get-FtpFile'.</S><S S="verbose">ing function 'Get-OSArchitectureWidth'.</S><S S="verbose">ing function 'Get-PackageParameters'.</S><S S="verbose">ing function 'Get-PackageParametersBuiltIn'.</S><S S="verbose">ing function 'Get-ToolsLocation'.</S><S S="verbose">ing function 'Get-UACEnabled'.</S><S S="verbose">ing function 'Get-UninstallRegistryKey'.</S><S S="verbose">ing function 'Get-VirusCheckValid'.</S><S S="verbose">ing function 'Get-WebFile'.</S><S S="verbose">ing function 'Get-WebFileName'.</S><S S="verbose">ing function 'Get-WebHeaders'.</S><S S="verbose">ing function 'Install-BinFile'.</S><S S="verbose">ing function 'Install-ChocolateyDesktopLink'.</S><S S="verbose">ing function 'Install-ChocolateyEnvironmentVariable'.</S><S S="verbose">ing function 'Install-ChocolateyExplorerMenuItem'.</S><S S="verbose">ing function 'Install-ChocolateyFileAssociation'.</S><S S="verbose">ing function 'Install-ChocolateyInstallPackage'.</S><S S="verbose">ing function 'Install-ChocolateyPackage'.</S><S S="verbose">ing function 'Install-ChocolateyPath'.</S><S S="verbose">ing function 'Install-ChocolateyPinnedTaskBarItem'.</S><S S="verbose">ing function 'Install-ChocolateyPowershellCommand'.</S><S S="verbose">ing function 'Install-ChocolateyShortcut'.</S><S S="verbose">ing function 'Install-ChocolateyVsixPackage'.</S><S S="verbose">ing function 'Install-ChocolateyZipPackage'.</S><S S="verbose">ing function 'Install-Vsix'.</S><S S="verbose">ing function 'Set-EnvironmentVariable'.</S><S S="verbose">ing function 'Set-PowerShellExitCode'.</S><S S="verbose">ing function 'Start-ChocolateyProcessAsAdmin'.</S><S S="verbose">ing function 'Test-ProcessAdminRights'.</S><S S="verbose">ing function 'Uninstall-BinFile'.</S><S S="verbose">ing function 'Uninstall-ChocolateyEnvironmentVariable'.</S><S S="verbose">ing function 'Uninstall-ChocolateyPackage'.</S><S S="verbose">ing function 'Uninstall-ChocolateyZipPackage'.</S><S S="verbose">ing function 'Update-SessionEnvironment'.</S><S S="verbose">ing function 'Write-ChocolateyFailure'.</S><S S="verbose">ing function 'Write-ChocolateySuccess'.</S><S S="verbose">ing function 'Write-FileUpdateLog'.</S><S S="verbose">ing function 'Write-FunctionCallLogMessage'.</S><S S="verbose">ing alias 'Get-ProcessorBits'.</S><S S="verbose">ing alias 'Get-OSBitness'.</S><S S="verbose">ing alias 'Get-InstallRegistryKey'.</S><S S="verbose">ing alias 'Generate-BinFile'.</S><S S="verbose">ing alias 'Add-BinFile'.</S><S S="verbose">ing alias 'Start-ChocolateyProcess'.</S><S S="verbose">ing alias 'Invoke-ChocolateyProcess'.</S><S S="verbose">ing alias 'Remove-BinFile'.</S><S S="verbose">ing alias 'refreshenv'.</S></Objs> 0 Only an exit code of non-zero will fail the package by default. Set `--failonstderr` if you want error messages to also fail a script. See `choco -h` for details. The install of yarn was successful. Software installed as 'msi', install location is likely default. Chocolatey installed 1/1 packages. See the log for details (C:ProgramDatachocolateylogschocolatey.log). C:Windowssystem32>
最后,我们可以使用以下命令验证我们的纱线安装。
C:Windowssystem32>yarn --version 1.22.4 C:Windowssystem32>
勺子安装
安装 Yarn 的第三种方法是使用适用于 Windows 的 Scoop 命令行安装程序。 Scoop 的功能类似于 Chocolatey,但主要区别在于 Chocolatey 将要 安装 node.js 如果我们还没有安装它但是挖 将不会. 可以安装勺子 使用在 独家新闻网站.
要使用 scoop 安装 node.js,请运行以下命令。
scoop install nodejs
接下来,我们可以使用此命令安装纱线。
scoop install yarn
常用纱线命令
查看许多 Yarn 命令的最佳方法是运行 help 命令。
yarn help
开始一个新项目
要创建新项目,请运行以下命令。
yarn init
安装依赖
要安装项目的所有依赖项,请使用以下两个命令之一。
yarn yarn install
添加依赖
要向项目添加依赖项,请使用以下命令格式之一。
yarn add [package] yarn add [package]@[version] yarn add [package]@[tag]
向不同类别的依赖项添加依赖项
要将依赖项添加到特定类别,我们可以使用以下三个选项之一:
- 开发依赖
- 对等依赖
- 可选依赖项
添加这些命令依赖项的语法如下。
yarn add [package] --dev # dev-dependency yarn add [package] --peer # peer-dependency yarn add [package] --optimal # optimal-dependency
升级依赖
要升级现有的依赖项,我们可以使用 yarn up 命令。
yarn up [packagename] yarn up [packagename]@[version] yarn up [packagename]@[tag]
删除依赖
要删除现有的依赖项,我们应该使用以下命令。
yarn remove [package]
升级纱线
要将 Yarn 升级到最新版本,请运行以下命令之一。
yarn set version latest yarn set version from sources
结论。
在本教程中,我们探讨了 Yarn 是什么、它的用途以及人们选择它作为首选包管理器的原因。 我们已经使用 .msi 安装程序和包管理器 Chocolatey 和 Scoop 检查了 Yarn 安装。 我们更喜欢使用 Chocolatey,因为它更方便,因为它会自动为我们安装 node.js。
如果您在解决此安装时遇到任何问题,请立即致电 800.580.4985,或打开 聊天 或与我们联系,与我们知识渊博的系统管理员之一交谈!