vue3、vite使用typescript,配置ts的*.d.ts文件

什么是.d.ts文件

.d.ts文件是TypeScript中用于声明类型定义的文件扩展名。它允许开发者为JavaScript库或没有直接包含类型信息的代码提供类型注释,使得TypeScript编译器能够理解这些代码的结构和类型,从而在开发阶段提供静态类型检查、智能提示等功能,而不会对原始代码进行任何修改或编译操作。

简单而言:声明在.d.ts文件中的结构在项目其他页面中使用时无需引入,直接使用(相当于全局变量)

使用方法

第一步

在src同级目录下创建目录,在该目录下创建*.d.ts文件,这里我创建的是types目录,创建user.d.ts文件,用来封装typescript中的interface接口语法。

第二步

在tsconfig.app.json文件中配置include配置项,按以下形式添加你新创建的*.d.ts文件路径(**代表文件目录,*代表文件名)

// include包含的形式命名的文件可以被全局访问
  "include": [
    "src/**/*.ts",
    "src/**/*.tsx",
    "src/**/*.vue",
    "types/**/*.d.ts"
  ]
第三步

在*.d.ts文件中写需要被引用的内容,这里我写的是interface接口:

// 在.d.ts文件中配置的内容可以在其他文件中引用
interface interA {
    alls: string;
    gee: number;
}
interface interB {
    [index: number]: Array<interA>
}

在其他页面中直接使用:

其他常用内容

基本结构 —— 一个简单的*.d.ts文件可能包含以下内容:
// 声明一个全局变量
declare var myLib: {
  version: string;
  doSomething(data: any): void;
};

// 声明一个模块
declare module 'my-module' {
  export function greet(name: string): string;
}

这里,declare关键字用来定义类型信息而不实际实现它。var用于声明全局变量,而module则用于定义模块及其导出的成员。

对于您提到的问题,根据提供的引用内容,我无法确定问题的具体原因。引用和引用提到了关于Vue的Bus模块的使用和导出,在代码中使用Bus进行事件的监听和触发。而引用是一个Vue组件的示例代码,它使用了Bus模块来接收兄弟组件传递的内容。 根据您提供的信息,问题似乎是文件"d:/web/APP/newbus/src/views/components/yyfx/sdfx.vue.ts"被识别为非模块文件。这可能是因为该文件的路径或内容存在问题,导致无法正确识别为模块。 您可以检查文件路径是否正确,并确保文件内容符合模块的导入规范。此外,还可以尝试检查项目配置和依赖项是否正确设置。 请注意,由于我无法查看具体的文件内容和项目配置,以上只是一般性的建议。您可能需要进一步检查和调试您的代码以找到问题的具体原因。12<em>3</em> #### 引用[.reference_title] - *1* *3* [Vue中的$Bus使用](https://blog.csdn.net/m0_61246584/article/details/126301101)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}} ] [.reference_item] - *2* [手把手学习Vue3.0:Vue3.0正确使用Bus总线mitt实现组件间通信和传参](https://blog.csdn.net/shishuai4206/article/details/114658624)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值