有時候多個文件需要用到某個全局變量,但是某個全局變量中沒有該屬性,ESLint就會報錯,此時需要向ESlint規則中添加需要辨認的變量。
示例:
上面的index.js文件中,在頁面中直接打印ServerData變量(等同於打印global.ServerData),會報錯ServerData未定義。(這里會直接提示是因為用的是ESLint插件提示的,正常需要執行npx eslint ./src來校驗src文件夾下的所有js文件)
如何定義:
方法一:直接在當前文件定義:
此時報錯消失,那么如果多個文件都需要這個變量怎么辦。
方法二:定義在ESLint配置文件中。
這里是eslintrc.js文件,JSON、YAML類型以及packages.json中定義同理
如圖中eslintrc文件,有一個"globals"屬性,里面定義了全局變量ServerData。此時新建一個test.js文件,里面同樣用到了ServerData變量,此時已不再報錯。
說明:后面的參數用來表示這個變量的可操作度:
- readonly/false——只讀
- writable/true——可寫
- off——禁用該全局變量
- 說明:true/false 等價於只讀/可寫,但不推薦使用。詳見ESLint官網
- true/false