zoukankan      html  css  js  c++  java
  • [TypeScript] Using ES6 and ESNext with TypeScript

    TypeScript is very particular about what is and isn't allowed in a TS file to protect you from common developer errors. By default if you set the compile target to ES5 it only allows you to use globally defined variables that were available in the ES5 time-frame. That said it is super easy to configure TypeScript to use ES6 or ESNext using the liboption.

    We also cover how to make sure that these features work across the widest range of browsers using a simple polyfill.

    Sometime, you use "Promise", typescript reports error that Cannot find defination for Promise. 

    To solve this problem, you can change in tsconfig.json:

    {
      "compilerOptions": {
        "target": "es5",
        "outDir": "lib",
        "lib": [
          "dom",
          "es2017"
        ]
      },
      "include": [
        "src"
      ]
    }

    Add a "lib" tag, and add "es2017" or "es6" into the array. This can help to solve the "Promise" (or any features not existing in es5).

    Second way to do it is polyfill.

    Install:

    npm i -D core-js

    In your code, just import 'shim' from 'core-js':

    import "core-js/shim";
    const foo = () => Promise.resolve(null);
  • 相关阅读:
    网页显示UIWebView(一个)
    借百度数据,建立你自己的程序
    引水数据--紧凑
    Unity3d 实时折射和反射
    snmp监控磁盘
    Linux snmp监控
    20监控工具
    Java 四舍五入
    Oracle主键操作
    SnmpTrap
  • 原文地址:https://www.cnblogs.com/Answer1215/p/6568448.html
Copyright © 2011-2022 走看看