-
-
Notifications
You must be signed in to change notification settings - Fork 6.3k
Description
Version
3.0.0-beta.15
Reproduction link
Steps to reproduce
Create a sample Vue project.
Ensure eslint config includes: { "extends": [
"plugin:vue/recommended",
"@vue/airbnb"
] }
Open project in VS Code with eslint plugin.
Open "Home.vue" file, wait for errors to come.
What is expected?
No error in "Problems" tab.
What is actually happening?
Resolve error: require(...).promisify is not a function (import/no-unresolved)
Resolve error: require(...).promisify is not a function (import/no-extraneous-dependencies)
Resolve error: require(...).promisify is not a function (import/no-duplicates)
Resolve error: require(...).promisify is not a function (import/extensions)
Resolve error: require(...).promisify is not a function (import/no-named-as-default)
Resolve error: require(...).promisify is not a function (import/no-named-as-default-member)
Unable to resolve path to module '@/components/HelloWorld.vue'. (import/no-unresolved)
Why This Happens
- VSCode uses electron 1.7.12: (ref: https://github.com/Microsoft/vscode/blob/aaa191d9a2d893a7d42b6e2233430c5fe5064d9e/.yarnrc)
- Which uses node 7.9 (ref: https://electronjs.org/releases#1.8.1)
- util.promisify is not available in Node 7.9 (ref: https://nodejs.org/docs/latest-v7.x/api/util.html)
- But it is used in this line: ()
exports.cmdShim = require('util').promisify(require('cmd-shim')) - The above line is imported by the following route:
- eslintrc imports:
@vue/airbnb - https://github.com/vuejs/vue-cli/blob/dev/packages/%40vue/eslint-config-airbnb/index.js#L8
- https://github.com/vuejs/vue-cli/blob/dev/packages/%40vue/cli-service/webpack.config.js#L7
- https://github.com/vuejs/vue-cli/blob/dev/packages/%40vue/cli-service/lib/Service.js#L11
- https://github.com/vuejs/vue-cli/blob/dev/packages/%40vue/cli-shared-utils/index.js