Node-事件模块,文件系统模块

2018-07-09  本文已影响0人  从小就很瘦

事件模块

在Node中:

  1. 大多数的Node.js核心API都是采用惯用的异步事件驱动架构(fs/http)
  2. 所有能触发事件的对象都是EventEmitter类的实例
  3. 事件流程:引入模块—>创建EventEmitter对象—>注册事件—>触发事件
// 模块: 分为两种 1.自定义模块(movie.js) 2.系统模块(events)
/*
*   自定义模块: 引入时必须要加路径
*   系统模块: 引入时直接写名字
* */
// 事件模块
var events = require("events");

// element.on("click",callback); // jq的事件格式

// 实例化事件对象
var myEmitter = new events.EventEmitter();

// 注册事件
// myEmitter.on("事件名称","回调函数");
myEmitter.on("someEvent",function (msg) {
    console.log(msg);
});

// 触发事件
myEmitter.emit("someEvent","查看事件触发时,是否可以打印传递过去的参数!");

文件系统模块

文件系统模块主要是对项目中文件的操作

  1. 读取文件(fs.readFile)
  2. 写入文件(fs.writeFile)
  3. 流程:引入fs模块—>调用方法—>异常捕获
    文件的读写(同步,异步)
// 文件系统模块
const fs = require("fs");

// read a file 同步
var readMe = fs.readFileSync("readMe.txt","utf8");
console.log(readMe);

// write a file 同步
fs.writeFileSync("writeMe.txt","Hello World");

// read a file 异步
fs.readFile("readMe.txt","utf8",function (err,data) {
    if (err) throw err;
    console.log(data);
});

console.log(1111); 测试异步

// write a file 异步
fs.readFile("readMe.txt","utf8",function (err,data) {
    if (err) throw err;
    fs.writeFile("writeMe2.txt",data);
});

文件的创建,删除

  1. mkdir:创建文件夹
  2. rmdir:删除文件夹
  3. unlink:删除文件
var fs = require("fs");

// 删除文件
fs.unlink("writeMe2.txt");

// 创建文件夹 同步
fs.mkdirSync("stuff");

// 删除文件夹
fs.rmdirSync("stuff");

// 创建文件夹 异步 并 读写文件
fs.mkdir("stuff",function () {
    fs.readFile("readMe.txt",function (err,data) {
        if (err) throw err;
        fs.writeFile("./stuff/writeMe2.txt",data);
    });
});

// 删除文件 异步 并删除文件夹
fs.unlink("./stuff/writeMe2.txt",function () {
    fs.rmdir("stuff");
});

上一篇 下一篇

猜你喜欢

热点阅读