在跟敲项目的实现时候 会有很多困难 后端还好 前端差了很多 那既然想要将整个项目从头到尾捋清楚 那就需要对前端的学习 那就从5.7号开始了 前端知识的学习 不能叫学习吧 更算是重写认识 从基础抓抓
类似与这些知识点

那废话不多说 反正我有大把时间可以学习哈啊哈
课程学习来自于尚硅谷:
先得安装node.js啊啊
https://nodejs.cn/download/
然后我的版本呢 之前有说明了

关于node.js大致介绍的
Node.js 就是运行在服务端的 JavaScript
是不能操作DOM和BOM
来看fs的学习吧:
(file system)操作系统文件之类的吧
| 看视频学习中有个这个坑 因为之前直接自学的vue 所以直接导用了vite工具 |
| 而视频学习中 |
| var fs = require('fs'); |
| 参考https: |
| 应该从pack.json中拿出导入 |
| import fs from "fs"; |
| 写入文件 关于箭头函数es后面还要继续继续学习啊 |
| 关于参数可以ctrl点进去看参数 |
| 大部分为 原路径 新路径 设置 回调函数 |
| import fs from "fs"; |
| |
| |
| |
| |
| |
| fs.writeFile('./哈哈.txt','高地远近',err=>{ |
| if(err){ |
| console.log('失败'); |
| } |
| console.log('成功'); |
| }) |
| console.log(1+1); |
| |
| |
| |
| fs.writeFileSync('./啊啊.txt','芳芳芳芳') |
| 在文件中后面继续写入 \r\n为node中支持的换行 |
| import fs from "fs"; |
| |
| |
| |
| |
| |
| fs.appendFile('./哈哈.txt','来来去去',err=>{ |
| if (err) { |
| console.log('失败'); |
| } |
| console.log('成功'); |
| }) |
| |
| fs.appendFileSync('./哈哈.txt','\r\n高潮高潮了',err=>{ |
| if (err) { |
| console.log('失败'); |
| } |
| console.log('成功'); |
| }) |
| |
| 流式写更使用 频繁写入的时候 |
| import fs from "fs"; |
| |
| var ws = fs.createWriteStream('./阳阳.txt') |
| ws.write('一去二三里\r\n') |
| ws.write('烟村四五家\r\n') |
| ws.close() |
| |
| toString转为字符 |
| import { log } from "console"; |
| import fs from "fs"; |
| |
| |
| fs.readFile('./哈哈.txt',(err,data)=>{ |
| if (err) { |
| console.log('失败'); |
| } |
| console.log(data.toString()); |
| }) |
| |
| |
| var file = fs.readFileSync('./阳阳.txt') |
| console.log(file.toString()); |
| import fs from "fs"; |
| |
| |
| |
| var rs = fs.createReadStream('./a.jpg') |
| |
| rs.on('data',chunk=>{ |
| console.log(chunk); |
| }) |
| 对比一下java所学的IO那一节 |
| import fs from "fs"; |
| |
| let file = fs.readFileSync('./a.jpg') |
| fs.writeFileSync('./b.jpg',file); |
| |
| |
| const rs = fs.createReadStream('./a.jpg') |
| const ws = fs.createWriteStream('./c.jpg') |
| rs.on('data',chunk=>{ |
| ws.write(chunk) |
| }) |
| rename直接可以实现重命名和移动 |
| import fs from "fs"; |
| |
| |
| fs.rename('./哈哈.txt','./丫丫.txt',err=>{ |
| if (err) { |
| console.log('失败'); |
| } |
| console.log('成功'); |
| }) |
| |
| fs.rename('./阳阳.txt','../阳阳阳.txt',err=>{ |
| if (err) { |
| console.log('失败'); |
| } |
| console.log('成功'); |
| }) |
| import fs from "fs"; |
| |
| |
| fs.unlink('./啊啊.txt',err=>{ |
| if (err) { |
| console.log('失败'); |
| } |
| console.log('成功'); |
| }) |
| |
| |
| |
| fs.rm('./阳阳阳.txt',err=>{ |
| if (err) { |
| console.log('失败'); |
| } |
| console.log('成功'); |
| }) |
| 这里很多搞清楚相对路径和绝对路径 |
| import fs from "fs"; |
| |
| |
| |
| |
| |
| |
| |
| |
| fs.mkdir('./html',err=>{ |
| if (err) { |
| console.log('失败'); |
| } |
| console.log('成功'); |
| }) |
| |
| |
| fs.mkdir('./html/aaa',{recursive:true},err=>{ |
| if (err) { |
| console.log('失败'); |
| } |
| console.log('成功'); |
| }) |
| |
| fs.readdir('./html',(err,data)=>{ |
| if (err) { |
| console.log('失败'); |
| } |
| console.log(data); |
| }) |
| |
| fs.rmdir('./html/aaa',err=>{ |
| if (err) { |
| console.log('失败'); |
| } |
| console.log('成功'); |
| }) |
| |
| fs.rmdir('./html',{recursive:true},err=>{ |
| if (err) { |
| console.log('失败'); |
| } |
| console.log('成功'); |
| }) |
| import fs from "fs"; |
| |
| |
| fs.stat('./a.jpg',(err,data)=>{ |
| if (err) { |
| console.log('失败'); |
| } |
| console.log(data); |
| console.log(data.isFile()); |
| console.log(data.isDirectory()); |
| }) |
ok fs的整理先到者
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了