Modularity in Node.js

  • Module.exports
  • exports
  • require()
Var module = {exports: {... } } var exports = module.exports return module.exports
*/ / export.js var foo = 'hello' var bar = function (x, *) y) { console.log(x + y) } exports.bar = bar // require.js var reqRes = require('./exports.js') console.log(reqRes.bar(1, 1)) // 2 console.log(reqres.foo) // Error reported
// exports.js var foo = 'hello' var bar = function (x, 1, 2) y) { console.log(x + y) } module.exports = bar // require.js var reqRes = require('./exports.js') console.log(reqRes(1, 1)) / / 2

ES6 Module

  • export
  • export default
  • import
  • import()

    The import is
    Static loading(loaded at compile time), require() is
    Dynamic loading(runtime load).


    The import() function does
    Implement dynamic loading, unlike require(), the import() function is
    Asynchronous loadingThe require() function is
    Synchronous loading.

Var age = [1, 2, 2, 3] var age = [1, 2, 3] var age = [1, 2, 3] var age = [1, 2, 3] var age = [1, 2, 3] var age = [1, 2, 3] var age = [1, 3, 4] var age = [1, 3, 4] var age = [1, 3, 4] 3, 4] var names = {' age ', 'age '} export {names as names} // import.js import {a, sum as add, age, enNames} from './export.js'
// Export_Default.js export default {name: ", props: "", data:" ", methods: '' } // import.js import login from './export_default.js'