NodeWeb开发中import和require

2020-04-18  本文已影响0人  东方三篇

import & require & exports

遵循规范
调用时间
本质
require / exports
const fs = require('fs')  //真正被require出来的是来自module.exports指向的内存块内容

exports.fs = fs //exports 只是 module.exports的引用,辅助module.exports操作内存中的数据
module.exports = fs
import / export
import fs from 'fs'
import {default as fs} from 'fs'
import * as fs from 'fs'
import {readFile} from 'fs'
import {readFile as read} from 'fs'
import fs, {readFile} from 'fs'

export default fs
export const fs
export function readFile
export {readFile, read}
export * from 'fs'
  1. 通过require引入基础数据类型时,属于复制该变量。
  2. 通过require引入复杂数据类型时,数据浅拷贝该对象。
  3. 出现模块之间的循环引用时,会输出已经执行的模块,而未执行的模块不输出(比较复杂)
  4. CommonJS 模块默认 export 的是一个对象,即使导出的是基础数据类型
上一篇 下一篇

猜你喜欢

热点阅读