美文网首页
exports和module.exports小记

exports和module.exports小记

作者: wang_小维 | 来源:发表于2018-07-21 11:27 被阅读0次

    exports和module.exports主要作用是导出文件系统的。所以要和require(导进)放在一起用.下面就以它主要作用为要点进行理解.

    主要要点:

      1.exports 是 module.exports 的一个引用

            理解:相当于===> var father ={children:'wxw'},children就是father的一个引用.

      2.require 引用模块后,返回的是 module.exports 而不是 exports(重点)

      例1:

        这里导出是export.obj后======>require得到:{ obj: { name: '博客园' } }

        例2:

        这里导出是module.exports后======>require得到:{ name: '博客园' },这里很好的验证了第一点exports是module.exports一个引用.

      3.exports.xxx = test 相当于在导出对象上挂属性,该属性对调用模块直接可见

          以上面的例子为例:require(./exports)得到的是{obj:{name:'博客园'}}

      4.exports = test 相当于给 exports 对象重新赋值,调用模块不能访问 exports 对象及其属性

        以上面的例子为例:require(./exports)得到的是{},空对象

      5.如果此模块是一个类,就应该直接赋值 module.exports,这样调用者就是一个类构造器,可以直接 new 实例。

    以上几点是参考这个blog,上面主要是说了下自己的理解.

    相关文章

      网友评论

          本文标题:exports和module.exports小记

          本文链接:https://www.haomeiwen.com/subject/cfchmftx.html