这篇“nodejs中模块化指的是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“nodejs中模块化指的是什么”文章吧。
在nodejs中,模块化是指把一个大文件拆分成独立并且相互依赖的多个小模块,将每个js文件被认为单独的一个模块;模块之间是互相不可见的,如果一个模块需要使用另一个模块,则需要使用指定的语法来引入模块,并且只能引入模块所暴露的内容,语法为“const 变量名 = require('模块的路径');”。
本文操作环境:Windows10系统、nodejs 12.19.0版、Dell G3电脑。
nodejs中什么是模块化
概念
背景:在团队协作中,不同成员会独立写自己负责的代码,比如A负责a.js,B 负责b.js. 如果a.js和b.js定义了同一个变量,那么在使用该两个文件时,会导致变量同名而报错的情况。即全局变量污染。解决->nodejs模块化
概念:nodejs中的模块化是指将每个js文件会被认为单独一个的模块。模块之间是互相不可见的。如果一个模块需要使用另一个模块,那么需要通过指定语法来引入要使用的模块,而且只能使用引入模块所暴露的内容。
模块化就是遵守固定的规则,把一个大文件拆分成独立并且相互依赖的多个小模块.通俗来讲就是一个js文件可以使用另一个js文件中的数据.
语法:包括引入和暴露
引入模块
const 变量名 = require('模块的路径');
暴露语法(以下语法2选1)
模块内部:
1、多次暴露
module.exports.属性名1 = 数据1;
module.exports.属性名2= 数据2;
2、一次性暴露完
module.exports ={
属性名1:数据1,
属性名:2数据2,
}
模块路径细节
./:当前目录
../:当前目录的上一级目录
./下一级目录/
引入模块时可以省略.js后缀
引入nodejs本身模块或npm下载的包时,不用写路径,直接写模块名
1、引入上一级目录下的a.js模块
let 变量名= require('./../a');
2、引入下一级目录routes下的b.js模块
let 变量名= require('./routes/b');
3、引入npm下载的jQuery模块
let 变量名= require('jquery');
扩展知识:
模块化有什么好处?
1.可以提高代码的复用性
2.可以提高代码的可维护性
3.可以实现按需加载(学习vue时会十分明显)
模块化的产生也带来了模块作用域,同函数作用域相似,在自定义模块中定义的变量.方法等,只能在当前作用域内被访问,这种访问限制,有效的解决了变量污染的问题.
以上就是关于“nodejs中模块化指的是什么”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网行业资讯频道。