模块化
在nodejs中,存在2种类型的模块,系统模块、自定义模块。
系统模块
系统模块是nodejs官方提供给我们使用的模块库,通常官方的模块库比较通用,能帮助我们解决大多数问题,我们也不需要进行安装直接require()到我们的项目当中就可以了,我这里介绍一下通常使用的库吧。
- path模块:格式规范化路径
const path=require('path');
var str='c:\\wamp\\www\\a.html';
var obj=path.parse(str);
//base 文件名部分
//ext 扩展名
//dir 路径
//name 文件名部分
console.log(obj);
- fs模块:对文件的读写操作
1.txt
这个是1.txt的内容
fs.js
const fs = require('fs')
var str = fs.readFile('./1.txt', 'utf-8', callback) //这里是异步操作
console.log(str) //这个是1.txt的内容
第二种写法
fs.readFile('./1.txt', (err, data) => {
if (err) throw err;
console.log(data);
});
- querystring:解析字符串
例子,查询字符串 'foo=bar&abc=xyz&abc=123' 被解析成:
{
foo: 'bar',
abc: ['xyz', '123']
}
- url:模块用于处理与解析 URL
使用方法如下
const url = require('url');
对于url的例子,建议大家实际操作中去对着文档操作,个人建议。
自定义模块
自定义模块就是我们可以编写自己的模块。我这里就简单介绍一下自定义模块的基本使用方法。
首先在nodejs里面,一个js文件就可以被称为一个模块。
要使用我们的模块就必须要有2个操作,导出和导入。
a.js
var a = 1
module.exports = a //导出a
或者
module.export = {
a
} // 这里可以导出多个属性或者方法
b.js
var moduleA = require('./a.js') // 这里的a.js也可以写成a(因为会默认添加.js后缀)
console.log(moduleA.a) //输出1
通过npm发布我们的模块
我这里只简单说一下发布方法,具体的大家可以去百度一下,那个可比我详细一些
1.注册npm账号
2.通过cmd命令行登陆npm
3.通过npm命令直接发布到你的npm仓库(很粗糙。。。)
以上就是关于nodejs模块化的一下基础知识点,如果有什么写的不好的地方,欢迎各位大大吐槽。