由于某种原因,最近我的vs代码进行了更改,并开始仅使用我的Lerna软件包从子软件包级别提供绝对导入,例如:
如您所见,自动导入建议文件的@package/server/src/database
路径应为../database
,因为要编辑的文件位于同一包中,并且位于文件下方的一个文件夹中包含我要使用的数据库变量。
这是错误还是配置问题?
我已将vs-code中的TypeScript的Import Module Specifier
设置设为所有三个选项(自动,相对和绝对),它们似乎没有任何区别。
答案 0 :(得分:14)
在 VScode文件>首选项>设置>用户设置上
“ typescript.preferences.importModuleSpecifier”:“相对”
对我来说很好。进口
import { RegistrationComponent } from '../../abc-modules/registration/registration.component';
代替
import { RegistrationComponent } from 'app/abc-modules/registration/registration.component';
答案 1 :(得分:2)
我从Google登陆到这里,遇到了相反的问题。我的Visual Studio Code实例始终从相对的Lerna包中导入相对路径。
事实证明,我只是忘记将错误导入的软件包添加到我使用的软件包的package.json
文件中。
现在,一切正常。