Skip to content

Cheatsheet -- Node JS

Node JS 常用命令和常见错误

使用 NVM 管理版本

经常有各种版本问题,比如某个包还不支持最新 node 版本,所以要用 NVM 管理版本。

# 查看有哪些版本
nvm ls-remote
# 安装某个版本
nvm install v14.15.1
# 查看已经安装那个版本
nvm list
# 使用某个已经安装版本
nvm use v14.15.1

Node Sass version 6.0.0 is incompatible with ^4.0.0 || ^5.0.0

原因: Node Sass 包版本过高,所以要安装指定版本,但是版本低可能 node.js 本身版本冲突,所以要用 nvm 切换版本。
下图是 Node Sass 包的支持情况,我们要安装 4.14,所以要使用 node 14 版本。

p1

nvm use v14.15.1
npm install node-sass@4.14.1

VUE NPM 取消浏览器打开

在服务器上运行 npm run dev,需要取消打开浏览器这个默认操作。
参考链接 [1],在 .env 文件中写入 BROWSER=none 即可。

.env 全局默认配置文件,不论什么环境都会加载合并
.env.development 开发环境下的配置文件
.env.production 生产环境下的配置文件

[1] https://stackoverflow.com/questions/61927814/how-to-disable-open-browser-in-cra

内存空间不足

内存不足会导致发生错误,错误显示信息如下,解决方法就是释放某些内存

NPM ERR! code ELIFECYCLE 
NPM ERR! errno 137

VUE API 设置全局代理

即使用 API 中 url 从 http:xxx:yy 全都变成 /api_name, 方法是在 vue.config.js 中, 加入如下字段:

module.exports = {
    devServer: {
        proxy: {
            '/api': {
                target: `http:xxx:yy`,
                chainOrigin: true,
                ws: true,
                pathRewrite: {
                    '^/api': ''
                }
            }
        }
    }
}

然后在 API 服务器中设置反向代理 /api 路径, 代理到 yy 端口就行, 参考 ./nginx.md.

Comments