当前位置: 首页 > 后端技术 > Node.js

js模块化_0

时间:2023-04-03 14:43:06 Node.js

js模块化https://blog.csdn.net/weixin_...https://zh.javascript.info/mo...基于节点端操作暴露的commonJSconstname="xxx";constage=1;/***moudle.exports={}expose*/module.exports={getName,getAge,name,age};functiongetName(){returnthis.name;}functiongetAge(){返回这个.age;}/***使用exports.xxx=value暴露*/exports.add=function(a,b){returna+b;}介绍/***暴露的本质是基于模块。exports*module.exports和exports不能混用,否则module.exports为主*/constxiaomao=require("./m1");//引入一个自定义模块constm3=require("./m3");//引入自定义模块constuniq=require('uniq');//引入第三方模块xiaomao.getName();xiaomao.getAge()m3.add(1,11)letarr=[1,1,3,4,423,-1,-100,323,22,11,1,33,4,2,111,32321]uniq//数组去重排序(字典排序)uniq(arr)基于浏览器端运行全局安装browserifynpmbrowserify-g编译app.js生成buid.jsbrowserify./app.js-o./buid.js页面引入buid.jses6编译babel编译es6转es5,browserify编译node.jsforbrowser-recognizedjs全局安装:babel-cli,Browserify:npminstallbabel-clibrowserify-g本地安装:babel-preset-es2015:`npminstallbabel-preset-es2015`以上是否需要编译待定。可以直接在node中使用。直接在页面添加type=''module'也可以直接使用https://www.ruanyifeng.com/bl...分别讨论exportconstdata='asheh'exportconstmsg='ssss'导出函数showMsg(){console.log(msg);}exportfunctionshowData(){console.log(');}统一曝光constschool='硅谷'constperson={name:'老刘',age:18,sex:'female'}functiongetLaoliu(){console.log(person)}//统一曝光--常用`这里插入代码片段`export{school,person,getLaoliu}//支持重命名export{schoolasschool,personasperson,getLaoliuasgetLaoliu}默认暴露(适合只暴露一条数据)只能暴露一次exportdefault{name:"wc",age:5}混合使用#[分别暴露]exportconstteacher1={name:'强哥',age:15}exportconstteacher2={name:'柯哥',age:35}#[unifiedExpose]conststu1={name:'网络哥',age:25}conststu1={name:'掌声',age:33}export{stu1,stu2}#【默认曝光】exportdefault{school:'Shanghaidax',address:'shanghai',subject:['computer','java','bigdata']}导入方法#引入【分别暴露】moduleimport{data,msg,showData,showMsg}form'./module1'#注意不是解构赋值#引入【分别暴露】Module+packageandaddimport*form'./module1'#import[separateexposure]module+renameimport{dataasdata2}form'./module2'#import[unifiedexposure]module(同上三)import{schoolassc,person,getLaoliu}form'./module3'#引入【默认曝光】模块importmodule4form'./module4'#引入多种曝光方式importmodule5,{teacher1,teacher2,stu1,stu2}from'./模块5'