我是靠谱客的博主 文静大叔,最近开发中收集的这篇文章主要介绍nodejs中什么是模块化,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

本文操作环境: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视频教程》

以上就是nodejs中什么是模块化的详细内容,更多请关注靠谱客其它相关文章!

最后

以上就是文静大叔为你收集整理的nodejs中什么是模块化的全部内容,希望文章能够帮你解决nodejs中什么是模块化所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(75)

评论列表共有 0 条评论

立即
投稿
返回
顶部