ts中使用Promise中不识别问题

问题来源:

  1. vue3.0 + ts 环境
  2. 使用Promise对象

问题缘由:

当target为es5时,ts会认为你的ts源码也只使用了es5的api,不然会报错。由于ts只会转换语法,而不会转换或者兼容新的api。若是本身加过兼容的api,好比加过core-js,就不会有问题,能够手动添加es6的lib来让ts认识新的api。好比我配置的是"lib": ["dom", "scripthost", "es5", "es2015.promise", "es2015.core"]。要注意某些文章说的只有一个es2015.promise是不行的,由于es5默认带有"dom", "scripthost", "es5"三个lib,若是改为只有一个就会使得ts编译器不认识es5和dom的api

解决方案

在项目根目录下, 有一个tsconfig.json, 配置一下target和lib就能够了

相关文章
相关标签/搜索