require 的导入规则
require ('./xxx') ,想要导入自定义的模块 必须加路径
_dirname:模块中这个内置变量是当前模块所在的绝对路径
_fillename:相对于_dirname来讲 多了模块名称
Fs内置模块 实现I/O操作(以下结果自行测试 虽然我已经试了~)
let fs = require('fs');
fs.mkdir / fs.mkdirSync :创建文件夹 有Sync的是同步创建,反之没有的是异步,想要实现无阻塞I/O操作,我们一般都使用异步操作完成要处理的事情 无res.
fs.mkdir('./less',(err)=>{
if (err) {
console.log(err);
return;
}
console.log('ok');
});
console.log(1);//先输出1 异步不等创建结束直接输出
fs.readdir / fs.readdirSync:读取文件目录中的内容 有res
//let result = fs.readdirSync('./');// 同步的在这里我们就注掉
fs.readdir('./',(err,result) => {
if (err) {
console.log(err);
return;
}
console.log(result);//返回的结果是一个数组
})
fs.rmdir:删除文件夹 无res(在用fs.rmdir 删除文件夹的时候,文件夹是空的才可以(如果不是空的会报错)。
fs.rmdir('./less',err =>{//删除文件夹必须保证文件夹是空的
if (err) {
console.log(err);
return;
}
console.log('ok');
})
fs.readFile:读取文件中的内容 有res
fs.readFile ('./less/1.less','utf8',(err,result) => {
//读取文件中的内容 不设置UTF-8 读取出来的是buffer格式的数据,设置后读取的
//是字符串格式的数据
if (err) {
console.log(err);
return;
}
console.log(result);
});
fs.writeFile:向文件中写入内容(覆盖写入:写入的新内容会替换原有内容)无res
fs.appendFile:追加写入新内容,原有的内容还在.(这个追加的是zxc 需要自己实践 由于我真的是太懒了~所以就不一一展示了。
fs.appendFile ('./less/1.less','zxc','utf8',err => {
if (err) {
console.log(err);
return;
}
console.log("ok");
})
fs.unlink :删除文件
fs.copyFile:拷贝源文件
fs.copyFile('./App.js','./less/App.js',err=> {
//把源文件拷贝一份 到路径
if(err){
console.log(err);
return;
}
console.log("ok")
});
关于其中的path (后续会继续补充
let path = require('path');
console.log(path.resolve());//返回当前模块的绝对地址(不包含模块名称)<=>_dirname
console.log(path.resolve(__dirname,'less/tt'));
//可以把一个相对路径拼接在绝对路径的后面,特殊:如果两个路径都是绝对路径,以最后一个为主