无模块场景下如何在Vue 2.5.16中使用TypeScript?
解决TypeScript中"Cannot find name 'Vue'"的问题(针对vue@2.5.16版本)
我之前在项目里把package.json的devDependencies配置成了"vue": "2.5.16"——这个版本的Vue会自动在node_modules\vue\types目录下生成index.d.ts、vue.d.ts等类型声明文件,但当我写new Vue({...})这段代码时,还是碰到了(TS) Cannot find name 'Vue'的报错。
查了相关讨论线程后,我通过以下两步解决了这个问题:
- 创建一个
custom.d.ts文件,写入如下内容:
import _vue = require('vue'); declare global { const Vue: typeof _vue; }
- 在需要使用
Vue的文件顶部,添加对这个声明文件的引用:
/// <reference path="../Declarations/custom.d.ts" />
这样就能让TypeScript正确识别全局的Vue变量,不再出现找不到名称的报错了。
内容的提问来源于stack exchange,提问作者user764754
相关产品推荐
相关产品推荐

