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)
    

      

     
     
     
     
     
  • 相关阅读:
    redis和memcached的对比
    Linux根目录下各目录含义
    阿里云常用服务介绍
    Nginx的负载均衡算法、lvs的负载均衡算法
    MySQL高可用架构之MHA
    SQL server 2012 各个版本比较
    500 ZuulException: Forwarding error
    Hibernate --主键生成策略
    springboot配置activeMQ传输object类型的消息时:classnotfound问题
    JMS简介与API
  • 原文地址:https://www.cnblogs.com/cs122/p/12843784.html
Copyright © 2011-2022 走看看