zoukankan      html  css  js  c++  java
  • export 和 export default 的区别,exports 与 module.exports的区别

    export  

     
    export function resetRouter(){ //resetRouter}
    import {resetRouter}  from ./router.js
     

    export  const router = createRouter()

    import {router }  from ./router.js

    export default

    export  default function(){//resetRouter}

    import resetRouter  from ./router.js

    export  default  createRouter()

    import router  from ./router.js

    module.exports
     
    module.exports = {
      permissionCodeMap
    }
     
    const permissionCodeMap = require('/utils').permissionCodeMap

    重要,是成对出现的,不要混着来使用

    ES6使用export和import来导出/导入模块。是静态编译的。

    CommonJS的规范,被使用于Node.js中,使用module.exports与exports和require来导出/导入模块。是动态加载的。

    由于加载时机的问题,有时需要require一个ES6 Module

    es 6 Module(./example.js)

    const a = 'helloworld';
    export default a;

    其实导出的是:

    {
      "default": a
    }

    引用格式:

    const { default: a } = require('./example.js')
    var a = require('./expample.js).default


    总结

    export命令对外接口是有名称的,且import命令从模块导入的变量名与被导入模块对外接口的名称相同。

    export default命令对外输出的变量名可以是任意的,这时import命令后面,不能使用大括号。

    export default命令用于指定模块的默认输出。显然,一个模块只能有一个默认输出,因此export default命令只能使用一次。

    所以,import命令后面才不能用加大括号,因为只可能唯一对应export default命令。

    参考:https://www.cnblogs.com/cangqinglang/p/10445256.html

    https://imweb.io/topic/582293894067ce9726778be9

    https://www.cnblogs.com/fps2tao/p/10823468.html

    https://www.cnblogs.com/myfirstboke/p/10563597.html

  • 相关阅读:
    四级英语day9
    123
    像程序员一样思考
    Kali
    OS X
    Effective Java
    DHU ACM OJ
    Ambari
    Hadoop
    Hadoop2
  • 原文地址:https://www.cnblogs.com/jeffhong99/p/13322376.html
Copyright © 2011-2022 走看看