wli*_*gke 44 resolve eslint webpack
我的项目main中有一个文件夹,我像模块一样解析.例如import x from 'main/src'进口main/src/index.js.这是通过webpack的解析别名配置完成的.
我遇到的一个问题是通过eslint摆脱错误.我知道eslint提供了一个webpack resolve插件,但是,我一直无法让它工作.我怀疑是因为我在webpack 2上并在我的webpack配置文件中使用es6.
是否有手动方式来编写解决方案来解决我的问题?
我见过的唯一其他hack工作正在使用import/core-modules但是我必须列出子目录树中的每个文件夹main/src/bar,main/src/foo.这不太理想.
小智 102
我认为以下链接可以帮助您.您可以使用config添加解析目录.
https://github.com/benmosher/eslint-plugin-import#resolvers
例如,如果要解决src/,可以像下面这样写.eslintrc.
{
"settings": {
"import/resolver": {
"node": {
"paths": ["src"]
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
然后ESLint从src目录解析.您可以src/hoge/moge.js通过写作来要求const moge = require('hoge/moge');并且ESLint知道它.
小智 11
看到这个问题太迟了.实际上,已经有一个名为eslint-import-resolver-alias的解析器,它使用以下设置实现此功能.
{
settings: {
'import/resolver': {
'alias': [
['main/src', './main/src']
]
}
}
}
Run Code Online (Sandbox Code Playgroud)
Zip*_*184 10
我对 webpack 有同样的问题。我安装了 eslint-import-resolver-webpack 并更新了 .eslintrc
{
"settings": {
"import/resolver": "webpack"
}
}
Run Code Online (Sandbox Code Playgroud)
小智 8
我的工作润湿
.eslintrc.js
settings: {
'import/resolver': {
node: {
paths: ['.'],
},
},
},
Run Code Online (Sandbox Code Playgroud)
和 tsconfig.json
{
"compilerOptions": {
...
"baseUrl": "./",
...
},
}
Run Code Online (Sandbox Code Playgroud)
我遇到了类似的问题:ESLint无法解析相对于"baseUrl": "src"我的指令导入的模块tsconfig.json。
设法以类似于标记为解决方案答案的方式解决问题,除了我必须添加extensions数组。因此,我在我的内容中添加了以下内容.eslintrc.js:
settings: {
'import/resolver': {
node: {
extensions: ['.js', '.jsx', '.ts', '.tsx'],
paths: ['./src']
}
}
},
Run Code Online (Sandbox Code Playgroud)
希望这对某人有帮助。我的解决方案的来源实际上是软件包的npm page。
| 归档时间: |
|
| 查看次数: |
35208 次 |
| 最近记录: |