0

我正在使用linter-eslint带有 React 项目的原子包。我使用 webpack 作为捆绑器,并导入 sass 样式以在构建过程中进行处理。

当我在入口文件中导入样式时,我不使用它,但我需要将它导入那里,以便 webpack 触发处理。我这样做:

import commonStyle from './public/styles/common.sass';

我得到了错误no-unused-vars,因为它实际上没有在任何地方使用。

我可以设置no-unused-vars抛出警告而不是错误,但我想知道是否应该以不同的方式进行导入,或者当导入的文件具有.sass扩展名时是否可以禁用该规则。

谢谢你的帮助!

4

1 回答 1

4

编辑2019-09-17

我写的原始解决方案可以作为一种解决方法,但是有一个更好的替代方法来忽略模式。解决方案是避免在导入时创建常量:

import './public/styles/common.sass'

这很有效,没有变量可以忽略,因为我们只是没有定义一个。

我将在下面留下原始答案,因为忽略模式在其他情况下可能很有用。


原答案2017-03-27

在阅读了ESLint 文档no-unused-vars后,我意识到最好的方法是使用该选项varsIgnorePattern。使用此选项,我们可以定义一个将被 linter 忽略的正则表达式字符串。

此外,当我使用eslint-config-react时,我必须添加^React$到被忽略的字符串中,因为它与该包一起提供。如果我只是覆盖varsIgnorePatter,每次导入 React 时都会出错。

.eslintrc文件的补充内容如下:

"no-unused-vars": [
  "error",
  {"varsIgnorePattern": "_$|^React$"}
]

现在 linter 将忽略所有以下划线结尾的变量,例如styles_

于 2017-03-27T10:52:54.103 回答