
回复
1、模块可以多次加载,但是只会在第一次加载时运行一次,然后运行结果就被缓存了,以后再加载,就直接读取缓存结果。要想让模块再次运行,必须清除缓存。
2、模块加载会阻塞接下来代码的执行,需要等到模块加载完成才能继续执行——同步加载。
1、导入:require('路径')
2、导出:module.exports和exports
var exports = module.exports;
这样的命令。
1、异步加载
2、管理模块之间的依赖性,便于代码的编写和维护。
1、导入:require(['模块名称'], function ('模块变量引用'){// 代码});
3、导出:define(function (){return '值');
1、CMD是在AMD基础上改进的一种规范,和AMD不同在于对依赖模块的执行时机处理不同,CMD是就近依赖,而AMD是前置依赖。
1、导入:define(function(require, exports, module) {});
2、导出:define(function (){return '值');
1、兼容AMD和commonJS规范的同时,还兼容全局引用的方式
1、无导入导出规范,只有如下的一个常规写法:
1、按需加载(编译时加载)
2、import和export命令只能在模块的顶层,不能在代码块之中(如:if语句中),import()语句可以在代码块中实现异步动态按需动态加载
1、导入:import {模块名A,模块名B...} from '模块路径'
2、导出:export和export default
3、import('模块路径').then()方法