import {
foobar1,
foobar2,
foobor3, //typo! this key doesn't exist in the module.
} from './module_file.js'
console.log(foobar1, foobar2, foobar3) //EXPLODES
使用新的ES6樣式導入語句時,我犯的最常見的愚蠢錯誤之一是在對象解構中的一個鍵中會出現拼寫錯誤。我想不出一個我希望解構賦值中的值爲undefined
的單個實例。有沒有辦法強制導入語句失敗 - 如果我試圖導入的項目之一是未定義的?使用ES6導入語句時,是否有辦法防止項目未定義?
即:
import {
doesntExistInModule //EXPLODE NOW!
} from './module_file.js'
我認爲只有這樣,才能做到這將是一個複雜的短絨。檢查ESlint插件是否有這樣的情況。 – PitaJ
或者編寫你自己的Babel插件,它將進口包裝在一個額外的檢查中,並且如果它們未定義則拋出一個錯誤。 –