VScode - 对于 HTML 和外部 JS 文件,永远找不到“转到定义”(包括屏幕截图)

问题描述 投票:0回答:1
我什至不知道这是正常行为还是被破坏了。

但类似于“转到定义”在 CSS 和 HTML 文件之间的工作方式,您将被带到 HTML 或 CSS 中引用的类或 id,它在两种方式下都可以完美工作。

现在,对于我的 HTML 中的外部 JS 文件,这不起作用。 HTML 中的“转到定义”在我的 .JS 文件中找不到引用的函数。即使“查找所有参考文献”也会产生“无结果”

尽管如果脚本通过脚本标签嵌入到 HTML 中,则“转到定义”的效果与“查找所有引用”一样好。但我的大多数 javscript 文件都是外部链接的。

为了清晰起见,这里有一些屏幕截图。 我像一个疯狂的女人一样花了两个小时试图弄清楚这件事的真相,所以我真的

真的喜欢一些澄清。

Image1

Image2

Image3

javascript html visual-studio-code reference go-to-definition
1个回答
0
投票
发生这种情况可能是因为 vs-code 无法区分 .html 文件和 .js 文件。

我建议最好不要再把时间浪费在无用的事情上,并学习正确的惯例(最佳实践),例如:

    始终将函数命名为 execNew,而不是 ExecNew 第一个字母小写,这可能会让某人感到困惑,并且人们将其误认为是构造函数
  • 如果您在Javascript目标按钮中定义函数并向其添加EventListener。
index.html

<body> <button class="btn">Click me and see Magic</button> <script src="./basic.js"></script> <!-- Make sure you target btn after its rendered --> </body>
外部js文件(basic.js)

const btn = document.querySelector(".btn"); btn.addEventListener("click", printSomething); function printSomething() { console.log("Hello sir"); }
    
© www.soinside.com 2019 - 2024. All rights reserved.