在Node.js中從模塊中導出函數的語法是什麼?在Node.js中從模塊中導出函數的語法是什麼?
function foo() {}
function bar() {}
export foo; // I don't think this is valid?
export default bar;
在Node.js中從模塊中導出函數的語法是什麼?在Node.js中從模塊中導出函數的語法是什麼?
function foo() {}
function bar() {}
export foo; // I don't think this is valid?
export default bar;
在節點導出事情module.exports
特殊對象。例如:
該出口兩種功能:
module.exports = { foo, bar };
它們可以被用來作爲:
const { foo, bar } = require('./module/path');
要導出的這些功能作爲頂級對象一個你可以使用:
module.exports = foo;
module.exports.bar = bar;
它可以用作:
const foo = require('./module/path');
和:
const { bar } = require('./module/path');
或:
const foo = require('./module/path');
const { bar } = foo;
或:
const foo = require('./module/path');
const bar = foo.bar;
等
這是「的語法從模塊導出的函數在Node.js中「問題 - 即Node本地支持的語法。節點不支持import
/export
語法(請參閱this以瞭解原因)。由於slezica在下面的評論中指出,您可以使用像Babel這樣的轉譯器將import
/export
關鍵字轉換爲Node可以理解的語法。
見這些問題的答案以獲得更多信息:
以暴露foo和bar功能:
module.exports = {
foo: function() {},
bar: function() {}
}
你也可以做到這一點的更短的形式
// people.js
function Foo() {
// ...
}
function Bar() {
// ...
}
module.exports = { Foo, Bar}
導入:
// index.js
const { Foo, Bar } = require('./people.js');
可能的複製[什麼是「出口默認「在JavaScript?](https:// stackoverflow。com/questions/21117160/what-is-export-default-in-javascript) – Erazihel
絕對不是重複的。這是當前Node構建中的功能支持問題。什麼是降薪,人們? – slezica