nodejs备忘
- npm是什么东东?npm其实是Node.js的包管理工具(package manager),类似java的maven
- npm install=npm i。在git clone项目的时候,项目文件中并没有 node_modules文件夹,项目的依赖文件可能很大。直接执行,npm会根据package.json配置文件中的依赖配置下载安装。
windows安装nodejs
- node下载地址:http://nodejs.cn/download/
推荐使用node14版本,按正常的顺序下来,python这次可以安装成功。
- 安装过程中要求下载python
- 通过官网下载实在是太慢了,最后通过华军软件下载。地址:https://www.onlinedown.net/soft/14542.htm
- 下载下来后安装:https://www.cnblogs.com/liuqiyun/p/8133904.html
- 学习python:https://www.liaoxuefeng.com/wiki/1016959663602400/1016959735620448
- 查看是否成功:进入cmd命令,执行:
node -v
npm -v
- 对工程进行启动,使用的vscode,进入Terminal,执行:
npm install
npm run dev
如果npm刚安装,需要重启vscode。
linux(Centos)环境安装nodejs和工程部署
一、nodejs安装
- 进入root用户环境
- 下载nodejs安装包,推荐14版本,这个版本安装可以成功,部署工程错误很顺利解决,其他版本安装报错没有
- 下载:
wget https://nodejs.org/download/release/v14.19.0/node-v14.19.0-linux-x64.tar.gz
- 解压并放入指定目录
tar -xzvf node-v14.19.0-linux-x64.tar.gz
mv node-v14.19.0-linux-x64 /usr/local/node14
- 建立软连接
ln -s /usr/local/node14/bin/node /usr/bin/node
ln -s /usr/local/node14/bin/npm /usr/bin/npm
- 查看版本
$ node -v
$ npm -v
- 安装vue
sudo npm install vue -g
- 修改镜像地址为淘宝的镜像地址:
npm config set registry http://registry.npm.taobao.org/
如果需要改回来可以执行下面的命令:
npm config set registry https://registry.npmjs.org/
二、vue工程部署启动
- 进入vue工程
- 执行编译
sudo npm install --production --unsafe-perm=true --allow-root --registry=https://registry.npm.taobao.org
–unsafe-perm=true可以解决非root账号执行的权限问题
3. 启动:
sudo npm run dev
- 正式环境发布:
sudo nohup npm run build:prod &
三、遇到问题及解决:
1、node-sass错误:
Error: `sass-loader` requires `node-sass` >=4. Please install a compatible version.
报错原因为:加载器要求版本大于等于4,但是版本node-sass 并不兼容 node v8 的版本。所以我们需要升级node的版本,执行命令::
sudo npm i node-sass -D
发现会报下面权限的问题:
gyp ERR! stack Error: EACCES: permission denied, mkdir '/home/site/ma/node_modules/node-sass/.node-gyp'
实际原因是由于用的是root账户权限执行npm,而npm默认是不适用root权限创建内容,因此会出现权限问题而导致失败,加上参数–unsafe-perm=true --allow-root即可解决问题。执行下面命令,解决问题
sudo npm i node-sass -D --unsafe-perm=true --allow-root
2、vue-cli-service: command not found错误:
vue-cli-service: command not found
原因是vue-cli未安装,解决方式:执行下面代码:
sudo npm install vue-cli --unsafe-perm=true --allow-root
3、cross-env错误:
sh: cross-env: command not found
解决方式:
sudo npm i --save-dev cross-env --unsafe-perm=true --allow-root
4、github上拉取代码错误
github上拉去代码执行 npm install报错 code:128
解决方案:安装ssh key,参考:https://blog.csdn.net/qq_38230265/article/details/79108862?utm_source=app&app_version=4.5.8
5、windows下找不到npm命令的错误
npm : 无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。
所在位置 行:1 字符: 1
+ npm install typescript --save -dev
+ ~~~
+ CategoryInfo : ObjectNotFound: (npm:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
如果是刚刚安装的nodejs,重启下vscode就行
6、Cannot find module ‘webpack’ 问题解决办法
解决办法:
npm install --save-dev webpack --unsafe-perm=true --allow-root
参考:https://www.cnblogs.com/xxflz/p/9835344.html
7、问题:Error: Rule can only have one resource source (provided resource and test + include + exclude)
原因分析:package.json中webpack版本冲突问题。
解决方法:删除webpack,重新装以前的版本。
npm uninstall webpack
npm install webpack@^4.0.0 --save-dev
参考:https://blog.csdn.net/weixin_40643648/article/details/109444867
参考文档
- centos 6.x下安装nodejs:https://blog.csdn.net/myydan/article/details/86572472
- centos6.6 安装nodejs和npm
:https://www.jianshu.com/p/73515a3a15e6 - node-sass版本错误解决:https://blog.csdn.net/qq_41656259/article/details/85596684
- permission denied问题解决:https://blog.csdn.net/biao0309/article/details/90977752
- 让 vue项目在Linux后台持久运行:https://blog.csdn.net/qq_36476095/article/details/100695936
- Invalid Host header问题解决:https://blog.csdn.net/qq_34629352/article/details/78941667
- linux 安装npm:https://www.cnblogs.com/randysun/p/15949143.html