使用ESLint和Airbnb樣式指南如何在模塊中有效地編寫導出函數而不會被打斷?以下:Node.js高效地導出非匿名函數(因此Eslint停止抱怨)
exports.istest = function() {
console.log('Test');
};
拋出eslint '意外匿名函數' 的警告,同時:
exports.istest = function istest() {
console.log('Test');
};
似乎遠遠重複。
使用ESLint和Airbnb樣式指南如何在模塊中有效地編寫導出函數而不會被打斷?以下:Node.js高效地導出非匿名函數(因此Eslint停止抱怨)
exports.istest = function() {
console.log('Test');
};
拋出eslint '意外匿名函數' 的警告,同時:
exports.istest = function istest() {
console.log('Test');
};
似乎遠遠重複。
它是重複性的,但這是事情:當您說function foo() {}
時,您聲明一個名稱爲foo
的函數。當您說var foo = function() {}
(或exports.foo = ...
)時,您聲明瞭一個匿名函數,然後將其指定爲foo
變量的值。
這是一個微妙的差異,但它可能很重要。當您命名該函數時,您的調試器能夠在調試窗格中爲您正確標註該函數,但是如果聲明瞭匿名函數,則只會看到。這在調試時會很痛苦,所以通過在輕鬆的時候(當您命名它時)稍加重複的努力,您可以在以後調試時節省頭痛。
但是你可以再次調試沒有函數名稱,所以如果這不是你關心的問題,你可以直接禁用該規則(在你的.eslintrc
或者內部添加註釋)。
清除。簡潔。謝謝! – Trees4theForest
相關:[爲什麼Airbnb風格指南表示不鼓勵依賴函數名稱推斷?](https://stackoverflow.com/questions/37288950/why-does-the-airbnb-style-guide-say-那依賴於函數名稱的推理是d) – jfriend00