Cannot find module ‘@xxxx‘ or its corresponding type declarations.Vetur(2307)

一、问题表述

当我们想在vue页面通过import requestfrom '@client/utils/request’引入模块时,Vetur总是会提示Cannot find module ‘@xxxx’ or its corresponding type declarations。这样的错误,同时项目不能运行(如果其他地方使用别名引入的话,如下图)。今天就解决以为这个问题。
在这里插入图片描述

二、项目中为什么使用别名进行模块导入?

如果使用相对导入(import myComponent from ‘…/…/…/components/myComponent’ )。当项目开发到一定规模时,不便于维护。
比如:突然有一天对api目录进行目录调整,如果使用相对导入,那么所有导入都会失效,需要重新更改路径进行导入。如果使用别名导入,可能只需要改变别名的路径即可完成api目录调整。

三、TypeScript别名解析目录配置

提示:在ts别名解析前,webpack别名是必须要配置的。
首先在tsconfig.json中添加baseUrl和paths字段。两个字段具体的作用请参考:ts中文官网.
下面是我项目中的配置
在这里插入图片描述
配置完毕后,在vue或者ts中就可以使用别名了。
在这里插入图片描述
在这里插入图片描述

最后对于一些博客问题的纠正。
有些博客中提到项目必须放到第一个,这种做法在我个人项目不是必须的。
在这里插入图片描述
我的项目
在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Kinghiee

爸爸们求打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值