zoukankan      html  css  js  c++  java
  • export default 和 module.exports

    ES6使用 export 和 import 来导出、导入模块。

    export跟export default 有什么区别呢?

    1、export与export default均可用于导出常量、函数、文件、模块等

    2、你可以在其它文件或模块中通过import+(常量 | 函数 | 文件 | 模块)名的方式,将其导入,以便能够对其进行使用

    3、在一个文件或模块中,export可以有多个,export default仅有一个

    4、通过export方式导出,在导入时要加{ },export default则不需要

    test.js
    const test = () =>{
     ...
    }
    
    export default {
     test,
     ...
    }
    
    import Test from './test.js'
    
    Test.test()
     
    CommonJS模块规范
     
     
     

    1.module.exports才是真正的接口,exports只不过是它的一个辅助工具, 最终返回给调用的是module.exports而不是exports。module.exports 初始值为一个空对象 {},而exports为指向module.exports 的引用

    2. 在require() 的时候,返回的是 module.exports 而不是 exports,因此,直接赋值exports常常会出现错误,而赋值为module.exports常常是解决这一问题的折中办法

    3.所有的exports收集到的属性和方法,都赋值给了Module.exports。当然,这有个前提,就是module.exports本身不具备任何属性和方法。

    如果,module.exports已经具备一些属性和方法,那么exports收集来的信息将被忽略。

    config/dev.js
    module.exports = {
     NODE_ENV: 'DEV'
    }
    
    const dev = require(../config/dev.js)
    

      

     
     
     
     
     
  • 相关阅读:
    「学习笔记」min_25筛
    HNOI2019游记
    【SDOI2017】数字表格
    【APIO2016】烟火表演
    【SCOI2015】小凸想跑步
    java Thread源码分析
    java ThreadGroup源码分析
    bean获取Spring容器
    spring 管理bean
    thinkphp5.0.19 request
  • 原文地址:https://www.cnblogs.com/cs122/p/12843784.html
Copyright © 2011-2022 走看看