学习nodejs的一点笔记
>>1、模块:一个文件即为一个模块
1)global可以声明全局变量 (跨模块)
例如:global a = 100;
console.log(global.a); //输出100
2)module对象:当前模块的filename、子模块等信息
3)module.expors.obj //将obj对象声明为全局对象
4)__filename :当前模块的路径
5)A模块访问B模块变量的方法(A模块已经加载B模块):
a、global.v=value; //不推荐
b、module.expors.v
>>2、模块加载:require(‘fs’);
1)路径_查找步骤
a、文件在硬盘的相对/绝对路径 =>加载对应文件
b、无路径只有文件名 => 加载node核心模块或者node_modules下
例如:require(‘main.js’);
2)后缀_查找步骤
a、首先安装加载的文件名称加载
b、如果没有查找到则在文件名后加.js后缀
c、添加.json后缀
e、加.node后缀
f、报错
>>3、文件操作
先引入文件模块:var fs = require(‘fs’);
1)、写文件
例:(同步方式)
var write_file = function(_info){
fpath = process.cwd()+"\\option.json"; //指定目标文件
file = fs.openSync(fpath,"a"); //打开文件(同步、追加方式、若不存在则创建)
infoString = JSON.stringify(_info); //对象转json
fs.writeFile(file,infoString,function(){ //写入文件
if(err){ //有错报错
return console.error(err);
}
});
}
附文件打开方式:
r | 以读取模式打开文件。如果文件不存在抛出异常。 |
r+ | 以读写模式打开文件。如果文件不存在抛出异常。 |
rs | 以同步的方式读取文件。 |
rs+ | 以同步的方式读取和写入文件。 |
w | 以写入模式打开文件,如果文件不存在则创建。 |
wx | 类似 'w',但是如果文件路径不存在,则文件写入失败。 |
w+ | 以读写模式打开文件,如果文件不存在则创建。 |
wx+ | 类似 'w+', 但是如果文件路径不存在,则文件读写失败。 |
a | 以追加模式打开文件,如果文件不存在则创建。 |
ax | 类似 'a', 但是如果文件路径不存在,则文件追加失败。 |
a+ | 以读取追加模式打开文件,如果文件不存在则创建。 |
ax+ | 类似 'a+', 但是如果文件路径不存在,则文件读取追加失败。 |
2)、读文件
fs.read(fd, buffer, offset, length, position, callback) //异步方式
3)、关闭文件
fs.close(fd, callback)
这块我就不啰嗦了,手册是个好东西
>>4、模板引擎的配置和使用
var express = require("express"); //当然要先包含模板引擎模块
var swig = require("swig"); //加载模板处理模块
var app = express(); //创建app
//1)、定义要使用的模块
app.engine('html',swig.renderFile); //engine(“模板后缀”,“用于解析处理模板内容的方法”)
//2)、设置模板文件存放的目录
app.set("views","./views"); //set(“必须是views”,“目录”)
//3)、注册所使用的模板引擎
app.set("view engine","html"); //set("","")
未完,待续……