vue3.0+ts 在引用swiper/vue时报错

报错信息:Could not find a declaration file for module 'swiper/vue'

swiper版本:6.4.5

vue版本:3.0.0

<script lang='ts'>
  import { Swiper, SwiperSlide } from 'swiper/vue'
</script>

说明:引用方式参考官方文档https://swiperjs.com/vue/#installation

找寻解决方式,谢谢

给你们一个解决方案

在 ts 项目下的 src 目录创建一个 `swiper-t.d.ts` 文件

/**
 * @作者: Seale
 * @时间: 2021/1/26
 * @版本: V1.0
 * @说明: 声明swiper
 * @网站: https://www.imsle.com
*/

declare module 'swiper/vue' {
    import _Vue from 'vue'
    export class Swiper extends _Vue {}
    export class SwiperSlide extends _Vue {}
}

之后 重启项目即可

忘了说了,swiper的包是正常的,在script标签里面不加lang='ts'显示正常

你看看你本地的包是不是叫swiper 或者你的依赖包里面有没有啊  这个报错应该是找不到

缺少声明文件,参考https://blog.csdn.net/weixin_46054156/article/details/108581555

那个缺少声明文件的我也试了,静态的不报错,但是编译报错,还是运行不了

我尝试了下,vue3的js版可以正常使用,但是ts版确实有问题,官方也并没有说支持ts版

官方只是说支持vue.js 3,有可能不支持vue3.0+ts

但是我也看了swiper里面的文件,有好多ts文件(但我不知道是什么文件,或不知道ts文件是啥意思)

请问仁兄最后如何解决的?

我也没解决,从ts换成了js,看Seale的解决方法应该差不多,我也没试,朋友们可以试试再说

可以参考下这个文章,我当时也是引入swiper,然后各种报错
https://www.jianshu.com/p/51fa180e6fd6