我有一些文件將與Babel一起處理,因此使用ES6編寫。但是,我也有一些文件不會通過Babel,因此在同一個項目中應該在ES5中。如果我不小心在這些文件中使用了某些ES6功能(例如箭頭功能,解構),我可以配置Eslint以便引發錯誤嗎?Eslint:強制使用特定的ES版本
我注意到,設置"parserOptions": {"ecmaVersion": 5}
不能提供理想的效果,也不能設置"env": {"es6": false}
。
我有一些文件將與Babel一起處理,因此使用ES6編寫。但是,我也有一些文件不會通過Babel,因此在同一個項目中應該在ES5中。如果我不小心在這些文件中使用了某些ES6功能(例如箭頭功能,解構),我可以配置Eslint以便引發錯誤嗎?Eslint:強制使用特定的ES版本
我注意到,設置"parserOptions": {"ecmaVersion": 5}
不能提供理想的效果,也不能設置"env": {"es6": false}
。
你可以嘗試使用禁用規則有其內部註釋
/* eslint-disable */
alert('foo');
/* eslint-enable */
禁用規則沒有問題。我只是想知道是否有一些規則禁止es6的東西(最好 - 一個規則禁止所有新的東西)。 –
你可以使用帶參數「esversion」的jshint:6 – nightmare
因爲它最後變成了,問題是在共享的配置,我用(xo)。在那個配置ecmaVersion
被設置爲6,而ESLint doesn't support override for ecmaVersion
你有區分文件(你提到你有兩個)有問題還是隻是根據ES5使它們脫毛的問題? – Bergi
@Bergi,不,文件分隔到不同的文件夾。所以我可以很容易地在那裏放置不同的'.eslintrc'。問題是 - 我必須寫在'.eslintrc'中來禁止使用es6語法。 –
聽起來有個獨立的'.eslintrc'文件帶有''parserOptions「:{」ecmaVersion「:5}''應該可以工作。你說*「沒有提供令人滿意的效果」*,它是否有任何作用? –