node——12-模組系統-基本規則
阿新 • • 發佈:2018-12-21
模組匯出——僅物件
main.js
var fooExports = require('./foo');
// ReferenceError: foo is not defined
// console.log(foo);
// { add: [Function: add], foo: 'bar', str: 'hello world' }
console.log(fooExports);
foo.js
var foo = 'bar';
function add(x, y) {
return x + y;
}
// 只能得到我想要給你的成員
// 這樣做的目的是為了解決變數命名衝突的問題
exports. add = add;
// exports 是一個物件
// 我們可以通過多次為這個物件新增成員實現
exports.foo = foo;
exports.str = 'hello world';
模組匯出——其他型別
現在,我有另一個需求:
希望載入得到直接就是一個:
- 方法
- 字串
- 數字
- 陣列
main.js
var fooExports = require('./foo');
console.log(fooExports);
foo.js
function add(x, y) {
return x + y;
}
// exports = add;//沒用
// 如果某個模組需要直接匯出某個成員,而非掛載的方式
// 那這個時候必須使用下面的方式
// module.exports = add;// [Function: add]
module.exports = 'hello';// hello