为什么提交package-lock.json可以消除npm信号器安装错误?

为什么提交package-lock.json可以消除npm信号器安装错误?,npm,asp.net-core,.net-core,signalr,asp.net-core-signalr,Npm,Asp.net Core,.net Core,Signalr,Asp.net Core Signalr,我将.Net Core 2.0项目升级为2.1。然后我尝试安装信号器(特别是客户端库): 在Visual Studio 2017 package manager控制台中,我初始化了package.json(实际上我不知道这个文件做什么): 然后我尝试安装信号器: PM> npm install @aspnet/signalr 然后我得到这个错误: npm : npm notice created a lockfile as package-lock.json. You should co

我将.Net Core 2.0项目升级为2.1。然后我尝试安装信号器(特别是客户端库):

在Visual Studio 2017 package manager控制台中,我初始化了package.json(实际上我不知道这个文件做什么):

然后我尝试安装信号器:

PM> npm install @aspnet/signalr
然后我得到这个错误:

npm : npm notice created a lockfile as package-lock.json. You should commit this file.
At line:1 char:1
+ npm install @aspnet/signalr
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (npm notice crea...mmit this file.:String) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError

+ @aspnet/signalr@1.0.0
之后,我在git中提交了package.json和package-lock.json文件,然后尝试重新安装包。现在错误已经消失了


那个错误是什么?为什么会通过提交而消失?

首先在项目文件中打开package.json文件,然后 将此添加到版本号之后,然后再次尝试安装signalr

npm : npm notice created a lockfile as package-lock.json. You should commit this file.
At line:1 char:1
+ npm install @aspnet/signalr
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (npm notice crea...mmit this file.:String) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError

+ @aspnet/signalr@1.0.0