gpt4 book ai didi

javascript - IntelliJ/Webstorm 找不到导入引用

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:16:00 28 4
gpt4 key购买 nike

我有以下项目结构:

    • 来源
      • 脚本
        • main.js
        • foo.js

在我的 main.js 文件中,我像这样导入 foo.js:

import 'src/scripts/foo.js'

当我单击上面的导入语句并转到 Navigate -> Declaration 时,我收到一条非常有用的消息,显示 Cannot find declaration to go

这使得使用起来非常令人沮丧,因为编辑器基本上不知道哪些文件导入其他文件。这意味着我无法使用 IDE 的有用功能,例如移动文件时搜索引用、查找用法等

如果我将 import 语句更改为相对的,它会完全起作用:

import './foo.js'

但是,我们正在争取绝对进口,a habit we picked up from writing python apps .

我遇到了 Webstorm: "Cannot Resolve Directory"这给了我将 mark 我的 src 目录作为 Sources Root 的想法。这样做之后,我可以将 main.js 中的导入语句更改为

import '/scripts/foo.js' //notice the leading forward slash

嗯,这样好多了,因为现在我至少可以 Navigate -> Declaration 但这并不理想,因为现在我无法标记 src 下的任何目录作为测试、资源等。

那么为什么 IntelliJ/webstorm 让这件事变得如此困难?

最佳答案

Because now I can't mark any of the directories underneath src as a test, resource, etc.

是的,你可以。无法在项目 View 中标记已标记文件夹的子文件夹。但是您可以在项目结构中执行此操作(Ctrl + Shift + Alt + S)。转到 Modules,选择您的模块并切换到 Sources 选项卡。现在您可以将 src 文件夹标记为 Sources(您已经这样做了)并将 src/test 标记为 Tests等等

根据Web Help ,在 WebStorm 中,此设置隐藏在 Settings > Directories 而不是项目结构中。

这是另一个仅使用项目 View 的解决方案:取消标记您的源文件夹,标记您的测试/资源子文件夹,然后再次标记(父)源文件夹。我不确定,为什么反过来不行。

关于javascript - IntelliJ/Webstorm 找不到导入引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30899380/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com