nodejs初识总结-02

2018-12-09  本文已影响0人  老王brave

这里我们学习nodejs的一些关键和基础的内容

npm是什么

凡是使用 npm 来管理的项目都会有这么一个文件

npm init

# 跳过向导,快速生成 package.json 文件
# 简写是 -y
npm init --yes

# 一次性安装 dependencies 中所有的依赖项
# 简写是 npm i
npm install

# 安装指定的包,可以简写为 npm i 包名
# npm 5 以前只下载,不会保存依赖信息,如果需要保存,则需要加上 `--save` 选项
# npm 5 以后就可以省略 --save 选项了
npm install 包名

# 一次性安装多个指定包
npm install 包名 包名 包名 ...

# 安装指定版本的包
npm install 包名@版本号

# npm list命令以树型结构列出当前项目安装的所有模块,以及它们依赖的模块。
npm list

# 加上global参数,会列出全局安装的模块
npm list -global

# npm list命令也可以列出单个模块
npm list 包名

# 安装全局包
npm install --global 包名

# 更新本地安装的模块
# 它会先到远程仓库查询最新版本,然后查询本地版本。如果本地版本不存在,或者远程版本较新,就会安装
npm update [package name]

# 升级全局安装的模块
npm update -global [package name]

# 卸载指定的包
npm uninstall 包名

# 查看包信息
# view 别名:v、info、show
npm view 包名

# 查看使用帮助
npm help

# 查看某个命令的使用帮助
# 例如我忘记了 uninstall 命令的简写了,这个时候,可以输入 `npm uninstall --help` 来查看使用帮助
npm 命令 --help

tips:npm 5 以后就可以省略 --save 选项,自动会给你的package.json中添加包信息了。

这里看起来命令很多很长,其实很多都有简写比如:install/i-global/-guninstall/un

淘宝有npm官网的同步镜像,我们可以使用淘宝的镜像地址。淘宝镜像:https://npm.taobao.org/
+ 第一种方法:每次使用npm时指定从何处下载包。写法如下:
shell npm i jquery --registry=https://registry.npm.taobao.org
* 但是这样每次都要手动加--registry=https://registry.npm.taobao.org非常麻烦
+ 第二种方法:直接使用https://registry.npm.taobao.org为我们的默认地址
```shell
# 配置到淘宝
npm config set registry https://registry.npm.taobao.org

# 查看 registry 是否配置正确
npm config list
```
    * 这样你在使用`npm`的时候,默认就会去淘宝上下载包了。
+ 第三种方法:全局安装`cnmp`,然后用`cnmp`去代替`npm`。
```shell
# 全局安装cnpm
npm i cnpm -g

#下次使用
cnpm i
```
采用这三种方式都可以解决npm慢的问题。个人正在使用第二种方式,感觉不错。

npm官网:https://www.npmjs.com/ 查找包,和包简单的使用非常有用。

初识node之文件操作

- fs模块异步同步操作文件
    + fs是系统提供的核心模块,提供了`readFile()`和`readFileSync()`,同步和异步读取文件。
        * 同步会阻塞程序的执行,所以大部分情况推荐使用异步操作,特殊情况除外。
        * 异步操作往往通过回调函数来获取操作的结果。
    + fs的常用api

    > 更多可以去node官网查看,链接:http://nodejs.cn/api/fs.html
Api 作用 注意点
fs.appendFile(file, data, callback) 向文件中追加内容
fs.copyFile(src, callback) 复制文件
fs.mkdir(path, callback) 创建文件夹
fs.readDir(path, callback) 读取文件夹列表
fs.rmdir(path, callback) 删除文件夹 只能删除空文件夹
fs.unlink(path, callback) 删除文件
fs.readFile(path, callback) 读取文件内容
fs.writeFile(path, callback) 写出内容到文件
    fs.readFile('./index.html', 'utf8', function (err, data) {
        if (err) {
            throw err;
        }
        // do something
        console.log(data);
    })

很简单的nodejs,但是要学的灵活贯通还是非常的难,nodejs中有很多npm包,我曾经遇到一个人他每天坚持看10个npm包源码,但是以这个速度都要看非常之久。贵在坚持。加油!

下一个文章开始带来一系列干货。

上一篇下一篇

猜你喜欢

热点阅读