美文网首页
前端模块化总结——CommonJS

前端模块化总结——CommonJS

作者: H_DaYan | 来源:发表于2019-06-11 17:18 被阅读0次

CommonJS

Node 应用由模块组成,采用 CommonJS 模块规范。

范例

a.js

var x = 5;
var addX = function(value) {
    return value + x;
}

module.exports.x = x;
module.exports.addX = addX;

b.js

var example = require('./this.js');

console.log(example.x);     // output: 5

说明

CommonJS规范规定,每个模块内部,module变量代表当前模块。这个变量是一个对象,它的exports属性(即module.exports)是对外的接口。加载某个模块,其实是加载该模块的module.exports属性。

module对象

打印a.js的module对象

// a.js
...
module.exports.x = x;
module.exports.addX = addX;
console.log(module);

输出结果

Module {
  id: '.',
  exports: { x: 5, addX: [Function: addX] },
  parent: null,
  filename: 'E:\\2.study\\backbone\\app\\a.js',
  loaded: false,
  children: [],
  paths:
   [ 'E:\\2.study\\backbone\\app\\node_modules',
     'E:\\2.study\\backbone\\node_modules',
     'E:\\2.study\\node_modules',
     'E:\\node_modules' ] }

由此可见,module拥有id、exports、parent等相关属性

module对象属性解释

  • module.id 模块的识别符,通常是带有绝对路径的模块文件名。
    • 如果parents为null,返回.
    • 如果parents属性不为null,则返回当前文件的绝对路径
  • module.filename 模块的文件名,带有绝对路径。
  • module.loaded 返回一个布尔值,表示模块是否已经完成加载。
  • module.parent 返回一个对象,表示最先引用该模块的模块。
  • module.children 返回一个数组,表示该模块要用到的其他模块。
  • module.exports 表示模块对外输出的值
module使用方法

详解

相关文章

  • 关于前端模块化开发

    关于前端模块化开发 1 前端中有哪些模块化开发的规范以及实现方案 2 模块化的开发的好处 3 CommonJS

  • 前端模块化

    什么是前端模块化? 前端为什么需要模块化? CommonJS、AMD、ES6、CMD区别是什么? 一、什么是模块化...

  • 前端模块化总结——CommonJS

    CommonJS Node 应用由模块组成,采用 CommonJS 模块规范。 范例 a.js b.js 说明 C...

  • 前端模块化开发

    前端模块化开发 常见的三大模块化框架。 CommonJS: 1.根据CommonJS规范,一个单独的文件就是一个模...

  • ES Modules 中的 __dirname 和 __file

    模块化发展 早期,前端这块没有模块化系统,而 Node.js 需要模块化所以只能一直使用 CommonJS 标准凑...

  • node学习2

    什么是CommonJs? CommonJs就是模块化的标准,nodejs就是CommonJs(模块化)的实现 No...

  • 前端模块化类(1)

    前端模块化规范: (一) commonJs ①下载git和node ②下载使用browserify对主要文件(ap...

  • Seajs使用实例入门介绍

    seajs是啥,可以看看这篇前端模块化(CommonJs,AMD和CMD)点我点我--项目源码地址:https:/...

  • 通过 babel 体验 ES6 模块化

    原文: 一篇理解前端模块化:AMD、CMD、CommonJS、ES6[https://mp.weixin.qq.c...

  • 好程序员web前端教程分享js中的模块化一

    好程序员web前端教程分享js中的模块化一:我们知道最常见的模块化方案有CommonJS、AMD、CMD、ES6,...

网友评论

      本文标题:前端模块化总结——CommonJS

      本文链接:https://www.haomeiwen.com/subject/glbffctx.html