下面播放一则新闻

image.png

运行demo.ts之后可能会提示什么console,set,什么函数重复等等错误提示或者警告,这不并不是我们想看的。

  • 在项目根目录添加配置文件tsconfig.json
  • 复制以下代码
  • 复制下面代码name变量名字还是提示重复的话可将变量名写入代码块或者不重名就好,或者加入export{},再或者听傻逼网友的去掉下面配置的dom(这个嘛。反正我试过不行)。
  1. {
  2. "compilerOptions": {
  3. "allowSyntheticDefaultImports": true, // 允许引入没有默认导出的模块
  4. "module": "es2015",
  5. "removeComments": true,
  6. "preserveConstEnums": true,
  7. "sourceMap": true,
  8. "strict": true,
  9. "target": "es6",
  10. "lib": [
  11. "dom",
  12. "es6",
  13. "es2015"
  14. ]
  15. }
  16. }


console.log

  • 以上配置之后console还是报错或者警告可以配置tslint “no-console”: false

要是还不行的话你还是去找傻逼网友吧 靓仔是没办法了
image.png

解析:

tsconfig.json 所包含的属性并不多,只有 7 个,ms 官方也给出了它的定义文件。但看起来并不怎么舒服,这里就翻译整理一下。(若有误,还请指出)

  • files: 数组类型,用于表示由 ts 管理的文件的具体文件路径
  • exclude: 数组类型,用于表示 ts 排除的文件(2.0 以上支持 Glob)
  • include: 数组类型,用于表示 ts 管理的文件(2.0 以上)
  • compileOnSave: 布尔类型,用于 IDE 保存时是否生成编译后的文件
  • extends: 字符串类型,用于继承 ts 配置,2.1 版本后支持
  • compilerOptions: 对象类型,设置编译的选项,不设置则使用默认配置,配置项比较多,后面再列
  • typeAcquisition: 对象类型,设置自动引入库类型定义文件(.d.ts)相关,该对象下面有 3 个子属性分别是:
    • enable: 布尔类型,是否开启自动引入库类型定义文件(.d.ts),默认为 false
    • include: 数组类型,允许自动引入的库名,如:[“jquery”, “lodash”]
    • exculde: 数组类型,排除的库名

如不设定 filesinclude,ts 默认是 exclude 以外的所有的以 .ts.tsx 结尾的文件。如果,同时设置 files 的优先级最高,exclude 次之,include 最低。
上面都是文件相关的,编译相关的都是靠 compilerOptions 设置的,接着就来看一看。