自动创建的基于typescript的普通模版直接编译报错
发布于 6 年前 作者 gang28 14685 次浏览 来自 问答

没动任何代码,就是模板自动的代码,直接点编译,报了两处错。cannot find global type 请问怎么解决

  • 当前 Bug 的表现(可附上截图)
  • 预期表现
  • 复现路径
  • 提供一个最简复现 Demo
10 回复
  1. 从./node_modules/typescript/lib文件夹中找到这个两个interface的定义.
  1. 复制粘贴到自己typings/lib.wa.es6.d.ts文件中.
  1. 编译.

这个问题是 TypeScript 找不到类型的错误(不选择 TypeScript 当然不会有这个报错了。。),问题在于生成代码中 typings 目录中,微信的童鞋 copy 了 TypeScript 3.2 之前版本的 lib.es6.d.ts ,导致 TypeScript 对类型的 reference 有问题。具体的原因不是很了解,

我删掉了 typings/lib.wa.es6.d.ts 文件。然后执行编译,这时会报某些类型重复,根据报错删掉 typings/wx/index.d.ts 中重复的类型,再编译就没问题了。

使用typescript 3.1.6没问题

使用typescript 3.2.2就会出这个问题

小程序对Typescript支持不好,试着整个项目迁移到 Typescript,也是各种问题,放弃了。

但又想用 Typescript,现在是自己配置tsconfig,指定需要编译的白名单。

So far,  so good

刚下载最新版本v.02.1812180,还是有上面的报错

error TS2318: Cannot find global type 'CallableFunction'.
 
error TS2318: Cannot find global type 'NewableFunction'.


win 的版本也存在相同的问题

是否自行运行过 npm install ?

试了下是正常的哦,开发工具版本是v1.02.1811290?重启开发工具再重新新建个试试呢

我用官方的typescript模版就是 typescript 3.1.6的,但还是报错:

npm ERR! code ELIFECYCLE

npm ERR! errno 2

npm ERR! [email protected] compile: `tsc`

npm ERR! Exit status 2

npm ERR! 

npm ERR! Failed at the [email protected] compile script.

npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

用 vs code 编译也是直接报错:

error TS2318: Cannot find global type ‘CallableFunction’.

error TS2318: Cannot find global type ‘NewableFunction’.

回到顶部