主要是为了备忘,开始接触NodeJS有一段时间,断断续续,年纪也大了时间一长容易忘事情,汗。
安装Node
直接到官网下载LTS版本安装即可,没必要追新功能用最新版。安装Node基本没什么坑,记得加到PATH就好。
Windows双击安装,macOS推荐使用brew安装,完成后在命令行里测试一下。
后期如果没有啥breaking的API改动基本也不用升级。
必要的配置
NodeJS的包管理器 ,如果在墙内及有可能在使用过程中很不稳定,一般推荐使用国内的镜像源,目前最知名的也就是淘宝家的了。
https://npm.taobao.org/
.npmrc
你可以通过修改 来设置默认的包源:
cnpm
你也可以安装 来代替 :
之后的大部分 都可以直接用 代替(发布相关的除外):
nrm
其实我还推荐你了解另外一种切换源的方式 :
使用方法如下,超级简单:
使用 列出可以切换的源,然后 瞬间切换,爽!
proxy
镜像源毕竟是copy的,同步状态有可能你不甚满意,最近taobao的源可能会有以下错误:
作为一个资深码农你也许有一个本地代理(SS懂?)让你无障碍访问国际互联网,那么你可以这么做:
配置好 的代理后你又可以开心地玩耍了。
Node入门须知
三分钟入门NodeJS,如果你已经有其他语言的编程经验,是可以的。
NodeJS的核心可执行程序 你可以简单理解成代码解释器,类似于Java的虚拟机,C#的.net Framework,Python里的 ,作用是把你的代码翻译成计算机行为。
以上就是运行NodeJS代码的不二法则。
项目启动
很多知名框架都会提供所谓的脚手架命令,但是对于萌新玩家,我是不建议直接去使用脚手架的,这些脚手架做出来的目录结构对于萌新玩家来说是懵逼的,虽然有可能都是最佳实践的结果,但没有1,2,3步骤和手拉手,萌新也许直接退出游戏了。
新手真正的入门法则还是踏踏实实按照各种教程一步一步走,如果教程不好就换,没学会走路就想跑是不可能的。一般项目是这样开始的:
明确项目需求(略)
创建项目目录
初始化项目信息
安装必要的依赖
模块划分,编码
系统集成,测试
项目发布,维护升级
这个流程用NodeJS来实践大致是这样的:
前面一节全都是在介绍 ,通过这个例子你应该明白它在NodeJS中的重要性了吧,所以让你的 好用意义非凡。
例子中安装了两次依赖可能你有点困惑,可以这样理解,第一次依赖是项目运行时必要的依赖 ,在发布时必须安装的;第二次依赖是用于开发或者测试的 ,比如某些debug包或者test框架,开发过程才需要的包,在项目部署时没必要安装。其实还有可能安装第三种依赖 ,比如用来做数据分析或者别的enhancement的,目前NodeJS支持区分对待这三类依赖包。
语法演示
NodeJS里的JS就是JavaScript,属于动态语言,命名规则类似Java,但是语法更接近各种动态语言,比如Python或者Ruby。上手不难,了解一下标准库和数据基本类型,在IDE的加持下你就可以开始写代码了。
模块的编写范例:
包管理小贴士
对于 包的安装的位置我们来了解一下,简单来说就是这个包所作用的范围。如果安装包不带 参数那么默认就是安装在当前目录。
这个包也就只有在当前目录(项目)里可用,这样方便做到环境隔离,不同项目可以用同样包的不同版本等等。
-g
如果安装过程中带了 参数那么就意味这个包是全局(global)安装的,在系统的任何位置都是可用的。
一般的包安装都是不用带 的,除了一些工具类的包,例如第一节介绍的那些,这样系统干净一些,也可以避免全局包污染项目导致各种灵异事件。
--depth
如果要查看安装了哪些global包可以用这个命令:
如果不加 ,哎真没法看,也不知设计这个list的人为啥不默认带上这个参数,脑子被门夹了。为了方便你可以配上以下两个alias。
ncu
使用NodeJS就是要面对各种各样的包,有些包升级很勤快,你也想升级怎么办呢?哪些是outdated哪些不是, 的升级命令真的很难用(记)哎。我推荐你了解一下 :
这么好用的东西当然要全局安装啦,用法很简单,检查当前项目所有包的更新状态:
使用 就可以一键更新项目里的所有包,当然它也提供了一些过滤参数,你可以查阅文档。如果要看全局的包有没有可以更新的,试试 ,非常方便。
有一点要注意,虽然命令是 但是包名不是,因为 的包名已经被一个天气预报的包占用了,无语。
总结
现在写NodeJS项目已经很容易了,JS经过了两三年的野蛮生长,诞生了成千上万个包(框架),其中不乏精品,作为搬砖的码农,经过一顿 操作就可以做出一个不错的demo,你还犹豫什么?赶快上车吧!
领取专属 10元无门槛券
私享最新 技术干货