javascript中导出与导入实现模块化管理教程
在理想情况下,开发者只需要实现核心的业务逻辑,其他都可以加载别人已经写好的模块。但是,在ES6以前,JavaScript一直没有自己模块体系(module),无法将一个大程序拆分成互相依赖的小文件,再用简单的方法拼装起来。如果要想在前端做模块化开发,必须依赖第三方框架来实现,如:requireJS与seaJS。
javascript中的导出和导入实现模块化管理
requireJS是AMD规范的起源,seaJS是CMD规范的起源,由于两者功能高度重合,后来seaJS不再维护,从此淡出人们的视野,于是requireJS一家独大,直到ES6的出现,且迅速成为前端和服务器端通用的模块解决方案,完全可以取代AMD规范和NodeJS支持的CommonJS规范。
ES6中首次引入模块化开发规范ESModule,让JavaScript首次支持原生模块化开发,使用export和import关键字进行模块化开发。
1export:用于对外输出本模块
方法1声明时直接导出
exportvarstr='1'; exportfunctionfunc1(){ return'helloword' } exportconstfunc2=()=>{ //箭头函数导出 return'helloword' }
方法2统一在最后导出
varstr='1'; functionfunc1(){ return'helloword' } constfunc2=()=>{ return'helloword' } export{ str, func1, func2, }
方法3起别名
varstr='1'; functionfunc1(){ return'helloword' } constfunc2=()=>{ return'helloword' } export{ strasstr1, func1asf1, func2asf2, }
方法4对导入的方法直接导出
这种方法常用于统一文件导出
//这是一个utils.js导出一个变量两个方法 varstr='1'; functionfunc1(){ return'helloword' } constfunc2=()=>{ return'helloword' } export{ strasstr1, func1asf1, func2asf2, } //这是引用utils.js的文件-config.js export{str,func1,func2}from‘./config.js'
方法5默认导出(default)
这种导出方式一个js文件只能有一个default,所以它后面不能跟变量声明语句。
exportdefaultfunction(){}
方法6导出类
//这是一个utils.js导出一个变量两个方法 exportclassutils{ format(){ //类方法1 }; cheackData(){ //类方法2 } } //调用utils文件中 import{utils}from‘./utils.js' constutils=newutils(); utils.format(); utils.cheackData();
2import:用于在模块中加载含有export接口的模块
方法1直接导出
import{str,func1,func2}from‘./utils.js'
方法2起别名
这种情况一般用于导入的两个或者多个模块中存在相同的导入内容
import{strasstr1,func1asf1,func2asf2}from‘./utils.js'
方法3一次导入文件中所有
import*asutilsfrom‘./utils.js' utils.str utils.func1 utils.func2
方法4导入使用default方式导出的模块
importutilsfrom‘./utils.js'
到此这篇关于javascript中导出与导入实现模块化管理教程的文章就介绍到这了,更多相关javascript导出与导入模块化管理内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!