typescript 学习笔记

typescript 学习笔记

申明全局类型,不用import导入,可以直接使用

  1. 项目更目录下创建typings目录

  2. typings中添加 index.d.ts, 在其中定义需要的类型

    interface MyType {
      foo: string,
      bar: string[]
    }
    
  3. 修改 tsconfig.json,添加字段 typeRoots

    {
      "compilerOptions": {
        "typeRoots": ["./node_modules/@types/", "./typings"],
      }
    }
    

在ts项目中 import 一个本地图片, 会报错cannot find module '.png'

在项目的.d.ts文件中,增加类型申明

declare module '*.svg'
declare module '*.png'
declare module '*.jpg'
declare module '*.jpeg'
declare module '*.gif'
declare module '*.bmp'
declare module '*.tiff'

Typescript 条件类型 ReturnType

ReturnType 获取函数返回值的类型

function fn () {
  return { a:1, b: 'foo'}
}
	
ReturnType<()=>string>  // string
ReturnType<(s:string)=>void>  // void
ReturnType<(<T extends U, U extends number[]>() => T)>  // number[]
ReturnType<typeof fn> // ReturnType<()=>{a:number, b:string}>  => {a:number, b:string}
posted @   shine_lovely  阅读(126)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示