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);
  • 相关阅读:
    Qt 解析EXcel文件
    Qt PC 安卓 tcp传输文件
    Qt listwigwt item 加入自定义元素
    Qt 独立运行时伴随CMD命令窗口
    xml模块
    shelve模块
    json模块 pickle模块
    sys 模块
    os模块
    添加变量
  • 原文地址:https://www.cnblogs.com/Answer1215/p/6568448.html
Copyright © 2011-2022 走看看