typescript学习:配置文件,声明文件

本文内容如下

typescript是什么?与js有什么区别?如何使用?

如果你都有了答案,可以忽略本文章,或去JS学习地图寻找更多答案


配置文件

tsconfig.json

{
    "exclude":["node_modules","dist"],   //不编译的文件
    "include":["test.ts"],      //要编译的文件
    "files":["test.ts"],        //要编译的文件
    "compilerOptions":{
    	"baseUrl": "./src",     //指定根路径
	    "target": "es5",        //用来指定被编译为的ES的版本
	    "lib": [                //编译过程中需要引入的库文件的列表
	      "dom",
	      "dom.iterable",
	      "esnext"
	    ],
	    "module": "esnext",     //
	    "rootDir":"./src"       //入口文件
        "outDir":"./build"      //出口文件
        "strict":true           //严格按照ts规范,开启全部规则
        "sourceMap":true        //开启代码隐射
        "noEmit": false,        //不生成编译后的文件 默认false
        "noEmitOnError": false, //当有错误时不生成编译后文件
        "alwaysStrict": false,  //用来设置编译后的文件是否使用严格模式,默认false
		"allowJs": true,        //是否对js文件镜像编译,默认false
        "checkJs": true,        //是否检查js代码是否符合语法规范,默认false
        "emitDecoratorMetadata": true,  //给源码里的装饰器声明加上设计类型元数据
    	"experimentalDecorators": true, //启用实验性的ES装饰器
    	"moduleResolution": "node",     //优先查找modules,classic是优先查找自定义的文件
       
       
        "removeComments":true   //编译时去掉注释
        "noImoliciAny":false    //是否允许隐式any,false是允许,写false即可
        "strictNullChecks":true //true是不允许null和undefined出现
        "noImplicitThis": false,//不允许不明确的this
        "noUnusedLocals":true   //检测未使用的变量
       
		 "noEmitHelpers": true,      //不再输出文件中生成用户自定义的帮助函数代码,如__extends。
	    "skipLibCheck": true,
	    "esModuleInterop": true,     // 允许export=导出,由import from 导入
	    "allowSyntheticDefaultImports": true,   //允许默认导出
	    
	    "forceConsistentCasingInFileNames": true,  //强制文件名大小写一致
	    "noFallthroughCasesInSwitch": true,  // 防止switch语句贯穿(即如果没有break语句后面不会执行)
	    
	    "resolveJsonModule": true,
	    "isolatedModules": true,    
        
	    "jsx": "react-jsx"  //处理react
      }
}

声明文件

使用第三方模块时,index.d.ts是第三方模块的声明文件,它的作用是:获得代码补全,接口提示等等

一般第三方模块自己是没有写的,而是由微软提供且维护的

1.到微软官方github查看是否有声明文件
microsoft.github.io/TypeSearch/

2.有的话,则可以引入第三方声明文件使用
cnpm i -S @types/jquery

3.没有的话,自己可以写,这里不介绍了
declare let jQuery:(selector:string) => any

学习更多

JS学习地图

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值