关于javascript:模块的暴露的引入

commonJS简介

  • commonJS 是一种模块化标准. 『纸面上的货色』
  • nodeJS 是一个应用程序, 它实现了 commonJS 模块化标准

commonJS裸露模块

裸露模块办法一:
module.exports = test
// module.exports 能够裸露任意数据
// 能够应用 module.exports 裸露多个数据

裸露模块办法二:
// exports 也能够裸露数据,不过不能应用 `exports.xxx = xxx` 的模式
exports.aaa = test;
exports.bbb = test2
exports.foo = function(){} 

commonJS引入模块

引入自定义模块,要写相对路径
require('./a.js');

引入node_modules 文件夹中的模块,能够间接写模块名
require('express');

在浏览器中应用commonJS语法要进行以下操作

0. 依照 commonJS 语法编写性能代码
1. 用npm装置: npm i -g browserify
2. browserify 入口文件门路 -o 进口文件门路
    入口文件门路: JS 代码运行的『终点』
3. 在html中引入打包后的文件

ES6注意事项

浏览器默认不反对 ES6 模块化. 通过 『type="module"』 使其反对

ES6模块的裸露(打√的是常常应用的)

1. 别离裸露 √  当有多个数据须要裸露时, 抉择分別裸露
2. 对立裸露
3. 默认裸露 √ 当只有一个数据须要裸露时, 抉择默认裸露

//别离裸露 export
能够应用通用形式引入
能够应用解构赋值形式引入
export function add(a, b){
    return a + b;
}

export function minus(a, b){
    return a - b;
}

export var a = 100;
export let b = 'iloveyou';
export const c = [1,2,3];


//对立裸露(用的少)
能够应用通用形式引入
能够应用解构赋值形式引入
function cheng(a, b){
    return a * b;
}

function chu(a, b){
    return a / b;
}

var a = 5211314;

//这里不是对象的简写模式
//这里肯定要写『简便形式』
export {
    cheng,
    chu, 
    a
}



//默认裸露
能够应用通用形式引入
也能够应用简便形式引入
const a = 100;
const b = 200;
export default b;

ES6模块的引入

1. 通用形式        
    import * as m1 from './m1.js';

2. 构造赋值 √   当指标模块应用『别离裸露』时
    import {add, minus} from './m1.js';
    
3. 简便形式 √   当指标模块应用『默认裸露』时
    import test from './m3.js';

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理