Usingpackages.jsonfiles——Workingwithpackage.json原文管理本地下载的npm包(模块)的最佳方式是使用package.json文件。package.json文件:包含您的项目所依赖的包列表。允许您使用语义版本控制规则来指定您的项目所依赖的包的版本。使您的项目可复制,以便与其他开发人员轻松共享。要求package.json必须有:name全部小写,一个单词,不允许有空格-并且_versionx.x.x格式符合semverpsec例如{"name":"my-awesome-package","version":"1.0.0"}创建package.json创建package.json文件有两种基本方法。1.使用CLI查询方法(questionnaire)创建一个包含您指定值的package.json,并运行以下命令(cmd)npminit,这将初始化一个命令行问卷,在命令行上呈现一系列问题,然后你提供一些值,最后会在命令行运行的目录下生成一个package.json文件。2.生成默认的package.json文件要创建此文件,只需运行带有--yes或-y标志的npminit命令:npminit-y此方法将生成一个默认包,该包从项目.json中提取一些信息文件。名称:当前目录名称版本:始终为1.0.0描述:自述文件中的信息或空字符串""main:始终为index.jsscripts:默认创建一个空的测试脚本关键字:空作者:空许可证:ISCbugs:当前信息inthedirectory(ifitexists)homepage:当前目录下的信息(如果存在)也可以使用命令行设置一些初始化选项,常用:npmsetinit.auther.email"xxx@npmjs.com"npmsetinit.auther.name"npmjs"npmsetinit.license"MIT"注意:如果package.json中没有描述字段,则npm将使用README.md或README文件第一行中的文本代替。描述可以帮助人们在搜索npm时找到您的包,因此在package.json文件中自定义描述将使您的包更容易找到。如何自定义package.json的命令行问卷。如果你想创建很多package.json文件,那么你可能想要自定义一些初始化问题,让这些package.json中包含一些你想要的重要信息。您可以自定义一些字段来询问它们的值。为此,您需要在您的主目录中创建一个.npm-init.js文件。一个简单的.npm-init.js应该是这样的。module.exports={customeField:'CustomField',otherCustomField:'Thisisfieldforkey'}在您的主目录中使用此文件运行npminit将生成包含该信息的package.json文件。{customField:'CustomField',otherCustomField:'Thisfieldisreallycool'}指定依赖项在指定项目所需的依赖项之前,您需要在package.json中列出您将使用的包。这里需要列出两类包:dependencies:这类包会在你的产品应用中引入和使用。devDependencies:这些包仅在您开发和测试时使用。手动编辑您的pacakge.json您可以手动编辑您的package.json。您可以在package.json文件中创建一个dependencies属性,它是一个对象,其值是您的项目所依赖的包的名称。它将指向一个semver表达式,指定该项目与您的项目兼容的版本。在你的项目中,那些包只用于本地开发,那么你可以使用与上面相同的方法将包列出到devDependensices中。例如:一个项目在最终产品中使用了版本为1的my_dep包,在开发过程中使用了版本为3的my_test-framework包:{"name":"my_package","version":"1.0.0","dependencies":{"my_dep":"^1.0.0"},"devDependencies":{"my_test_framework":"^3.1.0"}}--save和--save-devflagsaddedduringinstallation依赖package.json是在命令行使用npminstall命令时使用flags。即--save(默认)或--save-dev。向package.json添加依赖:npmistall
