模組 (Module)

a.js

module.exports = function() {
  console.log('a starting');
}

b.js

module.exports = function() {
  console.log('b starting');
}

main.js

var a = require('./a.js');
var b = require('./b.js');
a();
b();
console.log('main starting');

/* ==>
a starting
b starting 
main starting
*/

a.js

'use strict';

module.exports = function (callback) {
  setTimeout( function() {
    console.log('a starting');
    return callback();
  }, 3000 );
}

b.js

'use strict';

module.exports = function (callback) {
  setTimeout( function() {
    console.log('b starting');
    return callback();
  }, 1000 );
}
var a = require('./a.js');
var b = require('./b.js');

a(function() {
  b(function() {
    console.log('main starting');
  });
});

/* ==>
a starting
b starting 
main starting
*/
var async = require('async');
var a = require('./a.js');
var b = require('./b.js');

async.series([
  function(next){
    a(function() {
      next();
    })
  },
  function(next){
    b(function() {
      next();
    })
  }
],
function(err){
  console.log('main starting');
});

/* ==>
a starting
b starting 
main starting
*/
/**
 *
 *
 */
@param {String} flags
@param {String} description
@param {Function|Mixed} fn or default
@param {Mixed} defaultValue
@param {Array} argv
@param {Number} width
@param {Object} arg
@param {Boolean} arg
@param {Function} fn

:books: 參考網站:

powered by Gitbook最後更新: 2017-11-30 14:13:49

results matching ""

    No results matching ""