停止 eslint 抱怨 create-react-app 应用程序中的动态导入
Stop eslint complaining about dynamic imports in create-react-app app
CRA 中原生发布的 eslint 规则似乎不喜欢动态导入。所以在
...
// Lazy load
const Login = lazy(() => import('./Login'));
const LoggedInHome = lazy(() => import('./LoggedInHome'));
...
这两个 import
都会突出显示(尽管 eslint 没有给出错误消息)。
修复此问题的破坏性最小的方法是什么?
我运行正在使用 eslint 8.1.0 和 react-scripts 5.0.0。
可能 这无关紧要,但如果确实如此,eslint 是 运行 通过 vim.
上的 ALE
编辑:我的eslint配置如下:
<my project>
├── .eslintrc.json
└─┬ views
└─┬ <my react app>
├── package.json
└── src
...
我不相信树的上层或下层有任何 eslint 配置。
package.json:
...
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
},
...
.eslintrc.json:
{
"env": {
"browser": true,
"node": true,
"commonjs": true,
"es2021": true
},
"plugins": [
"prettier"
],
"extends": [
"eslint:recommended",
"plugin:json/recommended",
"prettier"
],
"parserOptions": {
"ecmaVersion": 2020,
"sourceType": "module"
},
"rules": {
}
}
在其他代码编辑器中是否也出现同样的高亮?
可能是Vim情况。
您在 Vim 中使用 JavaScript 的哪个语法插件?
一些较旧的语法插件不能很好地适应现代 ES 功能。
试试 YAJS along with ES.Next.Syntax.
这样的插件
ES.Next.Syntax 支持动态导入,并与 YAJS 一起工作。
CRA 中原生发布的 eslint 规则似乎不喜欢动态导入。所以在
...
// Lazy load
const Login = lazy(() => import('./Login'));
const LoggedInHome = lazy(() => import('./LoggedInHome'));
...
这两个 import
都会突出显示(尽管 eslint 没有给出错误消息)。
修复此问题的破坏性最小的方法是什么?
我运行正在使用 eslint 8.1.0 和 react-scripts 5.0.0。
可能 这无关紧要,但如果确实如此,eslint 是 运行 通过 vim.
上的 ALE编辑:我的eslint配置如下:
<my project>
├── .eslintrc.json
└─┬ views
└─┬ <my react app>
├── package.json
└── src
...
我不相信树的上层或下层有任何 eslint 配置。
package.json:
...
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
},
...
.eslintrc.json:
{
"env": {
"browser": true,
"node": true,
"commonjs": true,
"es2021": true
},
"plugins": [
"prettier"
],
"extends": [
"eslint:recommended",
"plugin:json/recommended",
"prettier"
],
"parserOptions": {
"ecmaVersion": 2020,
"sourceType": "module"
},
"rules": {
}
}
在其他代码编辑器中是否也出现同样的高亮?
可能是Vim情况。
您在 Vim 中使用 JavaScript 的哪个语法插件?
一些较旧的语法插件不能很好地适应现代 ES 功能。
试试 YAJS along with ES.Next.Syntax.
这样的插件ES.Next.Syntax 支持动态导入,并与 YAJS 一起工作。