ESLint ES6 Redux global-required Unexpected require();
Posted
技术标签:
【中文标题】ESLint ES6 Redux global-required Unexpected require();【英文标题】: 【发布时间】:2016-09-26 00:02:24 【问题描述】:我在使用 ESLint 时遇到了这个问题,我无法自己解决问题,正如您在屏幕截图中看到的那样,这些商店对于每个环境都是分开的,我该如何解决这个问题才能让 ESLint 开心并让我学习新事物?
【问题讨论】:
【参考方案1】:这是因为您需要分支代码:http://eslint.org/docs/rules/global-require。
如果您不想更改代码,只需添加禁用 cmets:
/* eslint-disable global-require */
// your code here
/* eslint-enable global-require */
【讨论】:
然后改变?我应该怎么做?我阅读了有关 global-require 的信息,但我完全理解不了,哈哈。它使 require 的行为类似于导入,对吗? 是的,这意味着它必须是***的。最简单的更改方法是只需要所有 3 个,并且只导出您需要的那个(您可以在 if 语句中保留对 module.exports 的分配,只需将要求移出,所以 var prod = require('config.prod') ;等 这是一个好习惯吗?我的意思是,需要将所有内容都放入模块中,然后在最初可以导入所需内容时导出所需内容。【参考方案2】:您可以在 .eslintrc 文件中禁用它。
rules:
"global-require": 0
【讨论】:
【参考方案3】:就我而言,我在如下功能组件中导入图像文件。
export const facebookIcon = require('../../assets/images/facebook.svg')
export const googleIcon = require('../../assets/images/google.svg')
export const logoboxImage = require('../../assets/images/logo-box.svg')
为了避免这种 lint 错误,我刚刚删除了图像前面的“导出”,它已经消失了。
const facebookIcon = require('../../assets/images/facebook.svg')
const googleIcon = require('../../assets/images/google.svg')
const logoboxImage = require('../../assets/images/logo-box.svg')
【讨论】:
【参考方案4】:你也可以内联禁用它:
const facebookIcon = require('../../assets/images/facebook.svg'); // eslint-disable-line global-require
【讨论】:
【参考方案5】:这就是我在 2022 年所做的,没有改变规则
<div :style="backgroundImage: 'url(' + bg + ')'" </div>
<script>
import bgImg from './assets/images/lg_bg.jpg';
export default
data()
return
bg: bgImg,
;
,
</script>
【讨论】:
以上是关于ESLint ES6 Redux global-required Unexpected require();的主要内容,如果未能解决你的问题,请参考以下文章
json ESLint JavaScript / ES6 / React配置