Node常见操作命令
Node常见操作命令
1、查看安装版本
node -v
2、初始化
npm i或npm install
3、创建package.json文件
npm init或 npm init -y 可跳过简易问答界面
4、运行js文件
node 文件路径
5、读取与写入文件
// 读取文件和写入文件 // 引入fs文件系统模块 const fs = require('fs') // fs.readFile()语法格式 // fs.readFile(path,options,callback) // path: 读取文件的路径 必选 // options: 编码格式,默认值是utf-8 // callback: 回调函数 必选 fs.readFile('../data/guess.json',(err,data)=>{ // if(err) throw err if(err){ console.log('文件读取失败',err) }else { console.log('文件读取成功',JSON.parse(data)) } // 文件读取成功时,err默认值为null // 如果读取失败,err作为一个对象,data为undefined }) //fs.writeFile() 语法格式 //file.writeFile(file, data , options, callback) //file: 读取文件的路径 如果读取文件不存在会自动创建文件。 //data: 写入文件的内容 //options: 编码的格式,默认值为utf—8 可选 //callback: 回调函数 必选 const WriteData=[ {"id":0,"name":"王二小"}, {"id":1,"name":"张三"}, {"id":2,"name":"李四"}, {"id":3,"name":"王妮"} ] // 写入的数据会覆盖之前的数据,再写入之前应先读取之前的数据,新旧数据一起写入。 fs.writeFile('../data/guess.json',JSON.stringify(WriteData),err=>{ if (err) throw err //如果有错误就抛出异常信息,并停止代码运行。 console.log(WriteData) })
6、使用http模块
// http模块 // res.setHeader()方法,设置Content-Type 响应头解决中文乱码问题 // res.setHeader('Content-Type','text/html;charset=utf-8') //res.end()向客户端发送响应内容 // res.send(str) //1 导入http模块 const http = require('http') //2 创建web服务器实例 const server = http.createServer() //3 为服务器实例绑定request事件,监听客户端请求 //简易版本 server.on('request',(res,err)=>{ res.setHeader('Content-Type','text/html;charset=utf-8') console.log('客户端发生请求') }) //不那么简易版本 server.on('request',(req,res)=>{ let postData = '' // 侦听请求的data的事件; req.on('data',(chunk)=>{ postData = postData+chunk; }); // 侦听请求的end事件 req.on('end',()=>{ res.end(postData); }) }) //4 启动服务器 server.listen(7000, ()=>{ console.log('server running at http://127.0.0.1:7000') })
7、path路径模块
//path路径模块 const path = require("path"); const fs = require('fs') // 路径拼接 // path.join()语法格式 // '../' 会抵消前面的一层路径 const pathStr1 = path.join('/a','/b/c','../','/d','e') console.log(pathStr1) // \a\b\d\e const pathStr2 = path.join('/a','/b/c','../../','/d','e') console.log(pathStr2) // \a\d\e // __dirname 当前文件所在目录 //utf-8 编码可选 fs.readFile(path.join(__dirname,'guess.json'),'utf-8',(err,res)=>{ if(err) return console.log('文件读取失败',err.message) console.log('文件读取成功',res) }) // path.basename(path,ext) 获取最后一个文件名称 // path:文件路径 必选 // ext:文件扩展名 可选 const pathStr3 = '/a/b/c/d.html' const FullName1 = path.basename(pathStr3) console.log(FullName1) // d.html const FullName2 = path.basename(pathStr3,'.html') console.log(FullName2) // d // path.extname(path) 获取文件扩展名 const extName = path.extname(pathStr3) console.log(extName) // .html
8、moment时间格式化
//moment时间格式化 //先npm i moment const moment = require('moment') //使用方法 const dt = moment().format('YYYY-MM-DD HH:mm:ss') console.log(dt)
9、nodemon-热更新
//热更新 npm i -g nodemon //安装 使用:nodemon +js文件名 //nodemon参考文章:https://www.jianshu.com/p/a35dfc72c6e6
10、打包
//在文件夹的根目录打开终端 //打包 npm publish //删除包 npm unpublish 包名 --force
漫思