美文网首页
ES6 模块化(一)

ES6 模块化(一)

作者: 祝名 | 来源:发表于2018-12-13 17:20 被阅读0次

一.模块化

1.耦合

高耦合---牵一发而动全身
低耦合---关联性相对低

二.模块化写法

1. 一个js文件就是一个模块

2. 模块中的变量是不会被外界所访问到的

3. 导出数据需要用export命令,export导出数据的时候要加花括号

let a = 123;
let b = 456;
export{a,b}; 

4. 用import命令可以导入其他模块中的数据

import {a,b} from './b.js';
console.log(a);
console.log(b);

5.引入有模块化语法的js文件的时候,需要在script标签中加上type='module'属性

<script type = "module" src = "a.js"></script>

三.别名

1.可以用as关键字起别名

  • import{xxx as xxx} from 'xxx';更改新的名字后,旧名就不好使了
  • 如下例中,将引入的num变量改名为cele
-->a.js文件
let num = 123;
export{num};

-->b.js文件
import {num as cele} from './a.js';
console.log(cele);
//输出123

-->index.html文件
<script type = "module" src = "b.js"></script>

四.export default命令

1.接收export default命令导出的数据,可以直接重命名引入,引入的名字就是该变量的新别名

  • export default命令,最多只能导出一个数据。(不影响其他数据导入导出)
  • 如下例,直接将num改名为aaa引入
-->a.js文件
let num = 123;
let foo = x => x*x;
let url = 'www.baidu.com';
export default num;
export {url, foo};

-->b.js文件
import aaa,{foo, url} from './a.js';
console.log(aaa);
//输出123

-->index.html文件
<script type = "module" src = "b.js"></script>

五.导出数据特点

1.export语句输出的接口,与其对应的值是动态绑定关系。通过该接口,可以取到模块内部的实时数据。

  • 导出的不是具体数据,而是变量数据对应的储存地址
-->a.js文件
let num = 123;
setTimeout(()=>{
    num = 456;
},2000);
export{num};


-->b.js文件
import {num} from './a.js';
console.log(num);
//输出123
setTimeout(()=>{
    console.log(num);
},4000);
//输出456


-->index.html文件
<script type = "module" src = "b.js"></script>

相关文章

  • 第4章 ES6模块化

    目标 模块化系统演进 ES6模块化实现 模块化概述 在 ES6 之前,社区制定了一些模块加载方案,最主要的有 Co...

  • 第4章 ES6模块化

    目标 模块化系统演进 ES6模块化实现 模块化概述 在 ES6 之前,社区制定了一些模块加载方案,最主要的有 Co...

  • js模块化规范

    一、js模块化1、模块化规范: script CommonJS AMD CMD ES6 modules 2、scr...

  • 十二、模块化

    1、es6 2、闭包模块化

  • 如何在项目中使用webapck

    随着ES6的推进,从以往的CommonJS和AMD。到如今ES6中的module方案,前端模块化越来越成熟,模块化...

  • 前端模块化:ES6,CommonJS

    前端模块化 共有四种规范 ES6 Module CommonJS AMD CMD ES6 Module ES6模块...

  • 前端模块化

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

  • 当import/export、require/module.ex

    ES6的模块化: import export default common.js的模块化: require mod...

  • ES6模块化

    模块化技术有哪些:- CommonJS(nodejs)、ES6模块化、AMD、CMD等 CommonJS:Comm...

  • JS-模块化

    ES6从官方标准带来了模块化开发规范。下面主要介绍ES6模块化开发当中最重要的export和import概念。 1...

网友评论

      本文标题:ES6 模块化(一)

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