Vetur: Unable to use "Go To Definition" inside <script> for single file components

Created on 25 Apr 2020  路  14Comments  路  Source: vuejs/vetur

  • [x] I have searched through existing issues
  • [x] I have read through docs
  • [x] I have read FAQ

Info

  • Platform: macOS
  • Vetur version: 0.24.0
  • VS Code version:

Version: 1.44.2
Commit: ff915844119ce9485abfe8aa9076ec76b5300ddd
Date: 2020-04-16T17:07:18.473Z
Electron: 7.1.11
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Darwin x64 19.4.0

Problem

  • I'm unable to use "Go to Definition" on one of vue methods (example: inside the mounted())

  • VS Code Notification

    Unable to open 'vue-editor-bridge.ts': Unable to read file '/vue-temp/vue-editor-bridge.ts' (Error: Unable to resolve non-existing file '/vue-temp/vue-editor-bridge.ts').
    image

  • Log (Window) output

    [2020-04-25 22:30:57.576] [renderer1] [error] Unable to read file '/vue-temp/vue-editor-bridge.ts' (Error: Unable to resolve non-existing file '/vue-temp/vue-editor-bridge.ts'): Error: Unable to read file '/vue-temp/vue-editor-bridge.ts' (Error: Unable to resolve non-existing file '/vue-temp/vue-editor-bridge.ts')
    at e.doReadAsFileStream (file:///Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:1635:7)
    image

Reproducible Case

Sample Code, then use "Go to Definition" on the this.fetchDatabase() under mounted()

<template>
  <div id="app">
    <router-view />
  </div>
</template>

<script>
export default {
  mounted() {
    this.fetchDatabase()
  },
  methods: {
    fetchDatabase() {
      console.log('action here')
    }
  },
}
</script>

ezgifcom-video-to-gif

need-more-info

Most helpful comment

the same issue. when i ctrl+click this.someFunc()
i got

Unable to open 'vue-editor-bridge.ts': Unable to read file '\vue-temp\vue-editor-bridge.ts' (Error: Unable to resolve non-existing file '\vue-temp\vue-editor-bridge.ts').

All 14 comments

Solution to this?

I am facing same issue,
what was the solution to this problem?

Same problem, why the issue is closed?

Same problem, why the issue is closed?

Sorry mate, i thought I'm the only one facing this issue so I gave up for the mean time. It was now reopened.

No, it is still not fixed. Just tried ST3 for the meantime 馃槄

@edward01 I cannot reproduce this. Can you follow this guide to collect LSP log?
https://github.com/vuejs/vetur/wiki/Collecting-LSP-log

Per retest today, I no longer encountered my issue on my vue project compared last time. Thanks for the fix.

Closing this issue now

the same issue. when i ctrl+click this.someFunc()
i got

Unable to open 'vue-editor-bridge.ts': Unable to read file '\vue-temp\vue-editor-bridge.ts' (Error: Unable to resolve non-existing file '\vue-temp\vue-editor-bridge.ts').

I get the same when I control-click this.someFunc(). It gives me the option to create the file. I tried that and it creates the file in C:\vue-temp\vue-editor-brige.ts. Then the next ctrl+click opens that file, which is empty.

vue-editor-bridge

same here, ctrl+click on a function inside mounted ()

on MacOs same as @ndunn219, but after clicking on "create file" I got this:

image

Same on Ubuntu 20.04, the problem seems to only happen when trying to go to definition of a method from inside a life cycle hook (created in my case). It works fine when doing so from another method.

I have the same problem. That makes 8 of us, why is this issue closed, without a solution?

I tried creating the file in the root of the project, but that did not fix it. Where is that file supposed to be located, please? The error message is not especially helpful...

Same issue

I will look this issue.
Please open a new issue when you have a problem.

Actually everyone鈥檚 problems may have different causes.
Continuous response in a closed issue is not helpful.

Was this page helpful?
0 / 5 - 0 ratings