VueJS/Typescript 错误:找不到模块“我的模块”或其相应的类型声明
Posted
技术标签:
【中文标题】VueJS/Typescript 错误:找不到模块“我的模块”或其相应的类型声明【英文标题】:VueJS/Typescript error: Cannot find module 'my-module' or its corresponding type declarations 【发布时间】:2021-04-17 18:04:23 【问题描述】:我有一个带有 Nuxt 和 Typescript 的 Vue2 设置。我正在尝试使用 yarn 安装 vue-slick-carousel 模块,但 Typescript 给了我错误:“找不到模块 'vue-slick-carousel' 或其相应的类型声明”。打字稿新手在这里! 当我尝试在组件中导入模块时会出现此问题:
<script lang="ts">
import Vue from 'vue'
import VueSlickCarousel from 'vue-slick-carousel'
export default Vue.extend(
components:
VueSlickCarousel
...
)
</script>
tsconfig.json 文件内容:
"compilerOptions":
"target": "ES2018",
"module": "ESNext",
"moduleResolution": "Node",
"lib": [
"ESNext",
"ESNext.AsyncIterable",
"DOM"
],
"esModuleInterop": true,
"allowJs": true,
"sourceMap": true,
"strict": true,
"noEmit": true,
"experimentalDecorators": true,
"baseUrl": ".",
"paths":
"~/*": [
"./*"
],
"@/*": [
"./*"
]
,
"types": [
"@types/node",
"@nuxt/types",
"nuxt-i18n"
]
,
"exclude": [
"node_modules",
".nuxt",
"dist"
]
还有我的 vue-shim.d.ts 文件,不知道要添加什么:
import Vue from 'vue'
declare module 'vue/types/vue'
interface Vue
$i18n:
locale:string,
locales:code:string, name:string, file:string[]
我知道问题来自 Typescript 无法找到模块类型。我找到了一个名为“@types/slick-carousel”的库来安装这些类型,但我不确定下一步该做什么。 我需要手动定义类型吗?
【问题讨论】:
【参考方案1】:在tsconfig.json
中添加@types/slick-carousel
到类型:
"types": [
"@types/node",
"@nuxt/types",
"nuxt-i18n",
"@types/slick-carousel"
]
【讨论】:
谢谢!虽然仍然得到同样的错误。它来自这个导入: import VueSlickCarousel from 'vue-slick-carousel'。找不到“vue-slick-carousel” 你的项目中有vue-shim.d.ts
文件吗?
我愿意!将其添加到上面的帖子中。有什么需要补充的吗?
你关注这个typescript.nuxtjs.org/guide/setup了吗?以上是关于VueJS/Typescript 错误:找不到模块“我的模块”或其相应的类型声明的主要内容,如果未能解决你的问题,请参考以下文章