2019独角兽企业重金招聘Python工程师标准>>>

转载 如何创建高质量的TypeScript声明文件(六) - 示例

继续上篇文章【如何创建高质量的TypeScript声明文件(五) - 示例】 上篇文章介绍了

  • 全局变量
  • 全局函数
  • 具有属性的对象
  • 重载函数
  • 可重用类型(接口)

几种示例

下面继续分享剩余的几种示例

  • 可重用类型(类型别名)
  • 组织类型

可重用类型(类型别名)

文档

在需要问候语的任何地方,您可以提供字符串,返回字符串的函数或Greeter实例。

代码

function getGreeting() {return "howdy";
}
class MyGreeter extends Greeter { }greet("hello");
greet(getGreeting);
greet(new MyGreeter());

声明

您可以使用类型别名来为类型创建简写:

type GreetingLike = string | (() => string) | MyGreeter;declare function greet(g: GreetingLike): void;

组织类型

文档

greeter对象可以记录到文件或显示警报。 您可以向.log(...)提供LogOptions,并为.alert(...)提供警报选项

代码

const g = new Greeter("Hello");
g.log({ verbose: true });
g.alert({ modal: false, title: "Current Greeting" });

声明

使用命名空间来组织类型。

declare namespace GreetingLib {interface LogOptions {verbose?: boolean;}interface AlertOptions {modal: boolean;title?: string;color?: string;}
}

您还可以在一个声明中创建嵌套的命名空间:

declare namespace GreetingLib.Options {// Refer to via GreetingLib.Options.Loginterface Log {verbose?: boolean;}interface Alert {modal: boolean;title?: string;color?: string;}
}

具有属性的对象

文档

您可以通过实例化Greeter对象来创建一个greeter,或者通过从中扩展来创建一个自定义的greeter。

代码

const myGreeter = new Greeter("hello, world");
myGreeter.greeting = "howdy";
myGreeter.showGreeting();class SpecialGreeter extends Greeter {constructor() {super("Very special greetings");}
}

声明

使用declare类来描述类或类类对象。 类可以具有属性和方法以及构造函数。

declare class Greeter {constructor(greeting: string);greeting: string;showGreeting(): void;
}

转载于:https://my.oschina.net/zhangdapeng89/blog/2874630

如何创建高质量的TypeScript声明文件(六) - 示例相关推荐

  1. 如何创建高质量的TypeScript声明文件(五) - 示例

    2019独角兽企业重金招聘Python工程师标准>>> 转发 如何创建高质量的TypeScript声明文件(五) - 示例 前面四篇文章一起介绍了在声明文件中关于库结构的一些介绍,本 ...

  2. CAD批量打图精灵更新至9.5.3,支持使用Adobe PDF虚拟打印机以创建高质量的PDF文件。

    CAD批量打图精灵更新至9.5.3,支持使用Adobe PDF虚拟打印机以创建高质量的PDF文件. Adobe打印机可以创建高质量的 PDF 文件,且可以输出两种类型的文件: 使用 Adobe 打印机 ...

  3. 如何编写 TypeScript 声明文件

    1. 什么是 TS 声明文件 在 TypeScript 中以 .d.ts 为后缀的文件,称为 TypeScript 声明文件.它的作用是描述 JavaScript 模块内所有导出接口的类型信息. 2. ...

  4. JS如何捆绑TypeScript声明文件

    前话 TypeScript是JavaScript类型的超集 这是TypeScript的文档介绍的一句话,那么他们存在联系呢? 我的理解是,TypeScript在JavaScript基础上引入强类型语言 ...

  5. php 得到 ts文件,获取TypeScript声明文件.d.ts步骤详解

    这次给大家带来获取TypeScript声明文件.d.ts步骤详解,获取TypeScript声明文件.d.ts的注意事项有哪些,下面就是实战案例,一起来看一下. 一.TypeScript的声明文件就像C ...

  6. Autodesk Forge Viewer与Forge API Node.js客户端SDK的TypeScript声明文件发布!

    作为一个凝聚专(jie)业(cao)精(man)神(man)的团队(Autodesk ADN),这大过?年的岂能没有一点表示?!花式红包什么的早已化境,技术分享大家也审low疲劳了,所以我们这就本着M ...

  7. 《Python编程实战:运用设计模式、并发和程序库创建高质量程序》—— 第1章 Python的创建型设计模式...

    本节书摘来自华章出版社<Python编程实战:运用设计模式.并发和程序库创建高质量程序>一 书中的第1章,第1.1节,作者:(美) Mark Summerfield,更多章节内容可以访问云 ...

  8. python 创建线程打印_如何使用免费软件创建高质量的照片打印

    python 创建线程打印 Photoshop may be the professional standard for high quality photo prints, but that doe ...

  9. c语言源码 文件绑捆,js捆绑TypeScript声明文件的方法教程

    前话 TypeScript是JavaScript类型的超集,这是TypeScript的文档介绍的一句话,那么他们存在联系呢? 我的理解是,TypeScript在JavaScript基础上引入强类型语言 ...

最新文章

  1. nginx的读写分离
  2. ECharts简单的运行示列(固定数据和交互数据库)
  3. Spring boot + Redis
  4. ★ 科幻分离式手机 富士通F-04B详细图解 ★
  5. toString()与new String ()用法区别
  6. onchange onpropertychange 和oninput事件的区别
  7. php固定空格,使用php校对(固定标点符号,空格,大写字母)生物页面文本
  8. MapReduce的编程规范
  9. IAR STM32报错Error[Pe147]:declaration is incompatible with“__nounwind __interwork __softfp unsigned
  10. mysql insert id的参数_Mysql----MySQL的mysql_insert_id和LAST_INSERT_ID(转)
  11. 阿里云更新ESC镜像
  12. 网页javascript部分
  13. 判断EXCEL表格某单元格值发生改变VBA代码
  14. 51单片机sht30_基于51单片机和机智云的WIFI智能插座(2019版)
  15. java程序内存加载_java内存加载机制
  16. python 成语库_python实现成语找一找
  17. seo秘籍,seo秘籍-自学seo零基础知识入门优化教程
  18. 数据结构与算法分析(十七)--- 怎么用回溯剪枝高效穷举所有可行解?
  19. 测试03:2022上半年:无处安放的空虚感
  20. 在线教育平台搭建的几种方案

热门文章

  1. 字符串函数用法 php,PHP字符串函数print()的用法
  2. java中explore_Java ServerPlayer.exploreMap方法代码示例
  3. swing中怎么在原来图片的基础上切换第二张图片_狂戳痛点!毕业论文图片和公式排版!...
  4. android平板开发板,利用开源开发板自制的平板电脑 | 雷锋网
  5. php 外部调用内部变量,PHP 如何在方法体外部获取内部变量?
  6. 用c语言运行程序的优点,C语言学习与总结---第一章:C语言概述
  7. html的css样式中表示后代选择器,html添加css——样式选择器
  8. HDLBits 系列(38)值得一看的状态机设计题目
  9. 【 Notes 】RSSI,LOS versus NLOS,Positioning, Mobility, and Tracking,Network Localization
  10. 【Verilog HDL】参数(Parameter)的作用案例