请问 vue3+ts 项目中,在vue的单文件里如何使用在types目录下声明的类型?

目前定义的接口ProcessNodeConfig类型是直接在单文件里声明的。
我想将他放到.d.ts的声明文件里形成全局的类型,这样就可以在多个文件中使用了,避免重复声明。
但是我发现.d.ts声明的类型,在ts文件中是可以全局使用的,但是在.vue的单文件中,编译是通过的,但是eslint会提示参数未定义
image.png
注释掉的类型已经迁移到config.d.ts的声明文件中了。
image.png
config.d.ts文件
image.png
对应的配置文件
.eslintrc.js
image.png
tsconfig.json
image.png
请教下要如何正确使用声明文件。
感谢大佬指点

阅读 8.6k
2 个回答

找到了,临时解决办法是关掉 no-undefhttps://github.com/vuejs/vue-...

可以参考一下对 .vue 配置的 overrides。

据称 typescript-eslint 是关掉了 no-undef 的,所以在 ts 中尝试使用了一个未定义的类型,是 ts 报的错,而不是 eslint。所以 TS 关掉这个选项,大概是因为 tsc 的检查更准确一些吧。

image.png

新手上路,请多包涵

可以在 .eslintrc.js 中配置全局变量!如图:可以将other.d.ts中声明的类型 fengmap 配置到.eslintrc.js 的global 中,这样不报错了。image.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题