今天分享一篇来自Phil Nash的文章,介绍了一些我们在构件项目时的小技巧,文末可见原文地址
如果你对NodeJs系列感兴趣,欢迎关注微信公众号:前端神盾局或 github NodeJs系列文章
创建一个Node项目
一般情况下我会使用npm
来初始化一个全新的Node项目
npm init
npm
会循例问我几个问题之后便会在本地生成一个package.json
文件。接下来我开始着手构建项目。
首先我会从Github仓库拷贝一份.gitignore
模版文件。之后(如果我还没忘记的话)我通常会创建一个开源协议的文件。
显然,这很没有效率。
这周我有幸看到Tierney Cyren的推文:
这四个命令将我从繁琐的手动操作中解脱出来,让项目有了一个好的开始:
-
npx license mit
通过license
包下载对应的协议 -
npx gitignore node
使用gitignore
包自动的从Github仓库中下载相关文件 -
npx covgen
使用covgen
包生成一份贡献者契约,这会让你的项目更受贡献者的欢迎。
如果你之前从未使用过npx
,请先尝试在本地运行它,如果运行失败,可以通过npm
下载安装。对于一个新项目来说,npx
是很有用的,它可以避免安装一些只有在项目创建时才会用到的全局依赖。
-
npm init -y
会接受npm init
过程中的默认选项。
为确保npm init -y
的结果是符合预期,Tierney建议我们先配置npm init
的默认项。
自定义你的npm init
npm config list
可以查看npm
已有配置。grep
管道可以过滤出与npm init
有关的配置项。
npm config list | grep init
你可以使用命令行或者npm config edit
调用编辑器来配置诸如作者的名称、邮箱、url、开源协议以及项目版本这些默认选项。
npm set init.author.name "Your name"
npm set init.author.email "your@email.com"
npm set init.author.url "https://your-url.com"
npm set init.license "MIT"
npm set init.version "1.0.0"
一旦有了自定义的配置,npm init -y
就会按照你的预期初始化。
创建一个初始化脚本
我对Tierney的建议做了点改进,下面是一段bash
脚本,灵感来源于Tierney的推文。
function node-project {
git init
npx license $(npm get init.license) -o "$(npm get init.author.name)" > LICENSE
npx gitignore node
npx covgen "$(npm get init.author.email)"
npm init -y
git add -A
git commit -m "Initial commit"
}
相较于Tierney的版本,这里直接从npm init
的默认值中获取作者名称、email以及协议类型。同时添加了git
初始化的命令。
你可以把这个函数存放在~/.bash_profile
文件中,通过source ~/.bash_profile
或者新建命令行窗口运行node-project
去启动它。你可以随意的新增删除脚本以适应你的项目需求。
原文地址:https://philna.sh/blog/2019/01/10/how-to-start-a-node-js-project/
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。