returnwhatipassin typescript 5.3

什么是 TypeScript 的类型增强功能

TypeScript 的类型增强(Type Augmentation)是一种功能,它允许您扩展现有类型的成员,以添加新的属性或方法,以及修改已有属性或方法的类型定义。这个功能让您可以更好地适应第三方库或原始代码,以便在不修改源代码的情况下添加自定义的类型信息。在本文中,我将详细介绍 TypeScri ......
TypeScript 类型 功能

如何使用 TypeScript 的 module augmentation 技术增强 Spartacus Feature Library

module augmentation 技术是一种强大的 TypeScript 功能,它允许开发人员在不修改原始代码的情况下扩展现有模块的功能。这种技术在 Angular 生态系统中的应用尤为广泛,特别是在构建功能库和插件时,以确保代码的可维护性和可扩展性。 概述 Module augmentati ......

eslint爱彼迎规范 React18+typescript

eslint终极规范 爱彼迎 eslint-config-airbnb 什么是eslint,为什么要使用eslint eslint 的配置项过多,针对js针对ts针对vue针对jsx、tsx等等不同的规则,小公司或者个人项目可以使用成熟的eslint社区规范,如airbnb、standard、goo ......
typescript eslint React 18

ypeScript入门到精通——TypeScript类型系统基础——枚举类型

TypeScript类型系统基础——枚举类型 枚举类型由零个或多个枚举成员构成,每个枚举成员都是一个命名的常量。 在 TypeScript 中,枚举类型是一种原始类型,它通过 enum 关键字来定义。例如,我们可以使用枚举类型来表示一年四季,示例如下: enum Season{ Spring, Su ......
类型 TypeScript ypeScript 基础 系统

TypeScript入门到精通——TypeScript类型系统基础——原始类型

TypeScript类型系统基础——原始类型 JavaScript 语言中的每种原始类型都有与之对应的 TypeScript 类型。除此之外,TypeScript 还对原始类型进行了细化与扩展,增加了枚举类型和字面量类型等。 到目前为止,TypeScript 中的原始类型包含以下几种: boolea ......
TypeScript 类型 基础 系统

TypeScript入门到精通——类型系统基础——类型检查

TypeScript类型系统基础——类型检查 类型检查是检查程序中类型约束是否正确的过程。类型检查既可以在程序编译时进行,即静态类型检查;也可以在程序运行时进行,即动态类型检查。TypeScript 支持静态类型检查,JavaScript 支持动态类型检查。 为了满足不同用户的需求,TypeScri ......
类型 TypeScript 基础 系统

TypeScript入门到精通——TypeScript类型基础

TypeScript类型基础 一、类型注解 在 TypeScript 中,我们可以使用类型注解来明确标识类型。类型注解的语法由一个冒号 ":" 和某种具体类型 "type" 组成,示例如下: ......
TypeScript 类型 基础

TypeScript入门到精通——TypeScript语言基础

TypeScript 语言基础 TypeScript 是 JavaScript 的超集。更确切的说,TypeScript 是 ECMAScript 2015(ES6)的超集。 TypeScript 语言支持 ECMAScript 2015 规范中定义的所有特性,例如类和模块等。JavaScript ......
TypeScript 语言基础 语言 基础

TypeScript入门到精通——安装 TypeScript

安装 TypeScript 一、安装 TypeScript 安装 TypeScript 语言最简单的方式是使用 npm 工具。如果你的计算机中还没有安装 Node.js,则需要到 Node.js 的官网(https://nodejs.org/zh-cn/download)上下载 LTS 版本的安装包 ......
TypeScript

TypeScript入门到精通——什么是 TypeScript ?

什么是 TypeScript ? https://en.wikipedia.org/wiki/TypeScript TypeScript is a free and open-source high-level programming language developed by Microsoft  ......
TypeScript

a Higher Kinded Type package in TypeScript

a Higher Kinded Type package in TypeScript Weykon [一名学生](weykon.com) ​关注他 ​ 展开目录 Higher-Kinded-Types-Toolbelt Higher-Kinded-Types-Toolbelt(gitee) ts-t ......
TypeScript package Higher Kinded Type

How to fix TypeScript error: expression of type can't be used to index type All In One

How to fix TypeScript error: expression of type can't be used to index type All In One type guard ......
type TypeScript expression error index

TypeScript: Factory Method in TypeScript

npm install -g typescriptnpm install -g ts-node index.ts //import * as fs from "fs"; //TypeScript 工厂方法模式 Factory Method in TypeScript /** * The Creato ......
TypeScript Factory Method in

typescript: vscode 配置环境

可以在Node.js command prompt 下,转到项目文件,进行命令行配置 https://code.visualstudio.com/docs/typescript/typescript-tutorial npm install -g typescript npm init -y tsc ......
typescript 环境 vscode

Typescript 测试驱动开发 TDD (17)

使用async await 如果一个异步函数正在使用Promises,那么我们可以使用async await语法来运行测试,就像我们通常做的一样。例如,考虑以下类,它使用Promise返回一个值,如下所示: 1 class AsyncWithPromise { 2 delayedPromise(): ......
Typescript TDD 17

[转] 记sublime配置typescript开发环境(插件和编译)的二三事

最近这几天在了解typescript,typescript官网上说Visual Studio 2017和Visual Studio 2015 Update 3默认包含了TypeScript,网上也有很多前辈推荐vscode。但是自己习惯上用sublime,本着编辑器能不换就不换的原则(懒人原则),还 ......
typescript 插件 sublime 环境

typescript_error_函数实现重复

在对ts文件执行编译后, 即执行tsc命令后, 函数名报错:"函数实现重复", 原因是新生成的同名js文件中包含了同样的函数名被识别到 在.ts文件目录下执行tsc --init生成tsconfig.json文件, 之后再编译就不会报错了( 注意必须是.ts文件的目录, 我在对D:/test/typ ......
typescript_error typescript 函数 error

typescript

枚举: enum 这样一个代码输出: a = {} a['one'] = 1 console.log(a['one'] = 1) => 输出 1 !!! 所以 a[a['one'] = 1] = 'one' => { "1": "one", "one": 1,} 就有枚举那味了!!!! ......
typescript

Typescript 测试驱动开发 TDD (16)

使用 done Jest 提供了一个名为 done 的方法,用于表示测试运行应该等待异步调用完成。done 函数可以作为参数传递给任何 beforeAll、beforeEach 或 it 函数,并且允许我们的异步测试在继续之前等待 done 函数被调用。让我们使用 done 重写我们之前失败的测试如 ......
Typescript TDD 16

Typescript 测试驱动开发 TDD (15)

异步测试 (Asynchronous tests) 正如我们在探索JavaScript和TypeScript时所看到的,我们编写的大部分代码都是异步的。这意味着我们无法准确控制回调函数何时被调用,或者Promise何时解析,因为我们正在等待一个超出我们控制范围的事件发生。这经常在单元测试中引起问题, ......
Typescript TDD 15

Typescript 测试驱动开发 TDD (14)

返回值的监视器 (Spies returning values) 当我们希望模拟函数的返回值时,我们可以轻松地从模拟实现中返回一个值。作为示例,请考虑以下类: 1 class MyMockedClass { 2 functionToBeMocked(): number { 3 return 5; 4 ......
Typescript TDD 14

Typescript 测试驱动开发 TDD (13)

Jest 监视器 (Jest spies) Jest还提供了一种能够检查特定类方法是否被调用的能力,使用的是所谓的spy。考虑以下类定义: 1 class MySpiedClass { 2 testFunction() { 3 console.log(`testFunction() called`) ......
Typescript TDD 13

Typescript 测试驱动开发 TDD (12)

Jest模拟 (Jest mocks) 在测试我们的代码时,我们经常遇到这样的情况:我们希望确保某个特定函数被调用,或者它被使用正确的参数进行了调用。当一个特定函数按顺序调用其他函数以执行一些业务逻辑时,这种情况最常见。例如,我们可能会调用一个初始化函数,并且该初始化函数可能会调用多个REST服务来 ......
Typescript TDD 12

Typescript 测试驱动开发 TDD (11)

数据驱动测试 (Data-driven tests) 很多时候,我们需要运行相同的测试多次,只是输入值不同。作为这个的一个例子,请考虑以下测试: [1, 2, 3, 4, 5] .forEach((value: number) => { it(`${value} should be less tha ......
Typescript TDD 11

Typescript 测试驱动开发 TDD (10)

测试设置和拆卸 ( Test setup and teardown) 在运行特定的测试之前,我们可能希望先执行一些代码。这可能是为了初始化一个特定的变量,或者确保对象的依赖关系已经设置好。同样地,我们可能希望在特定的测试运行后执行一些代码,甚至在整个测试套件运行完毕后执行。为了说明这一点,请考虑以下 ......
Typescript TDD 10

typescript_error_运算符“+”不能应用于类型“Number”和“Number”

function add_(num1: Number, num2: Number) { return num1 + num2 } console.log(add_(5, 7)) Number 是一个 Interface, number 才是表示类型,换成小写就可以了 function add_(nu ......

Typescript 测试驱动开发 TDD (9)

匹配器 (Matchers) 1. toBeJest 使用所谓的匹配器来将测试中的预期值与接收到的值进行匹配。让我们快速看一下其中一些匹配器,如下所示: 1 it("should match with toBe", () => { 2 expect(1).toBe(2); 3 }); 在这里,我们使 ......
Typescript TDD

Typescript 测试驱动开发 TDD (8)

强制运行和跳过测试 (Forcing and skipping tests) 在处理一个已经编写了多个测试的应用程序时,我们通常只想运行特定的测试或者一组特定的测试。这种操作被称为强制运行测试,因为我们要求整个测试套件只运行指定的测试。可以通过以下两种方式来实现: 1 describe("a gro ......
Typescript TDD

Typescript 测试驱动开发 TDD (7)

分组测试 (Grouping tests) 在一个测试规范文件中,我们可能希望将我们的测试分组为逻辑集合。Jest 使用 describe 函数来实现这个目的,如下所示的测试代码: 1 describe("a group of tests", () => { 2 test("first test", ......
Typescript TDD

Typescript 测试驱动开发 TDD (6)

观察模式 (Watch mode) Jest和其他测试框架一样,也可以在观察模式下运行。这意味着它会监视项目中的所有文件,并在任何文件更改时自动重新运行任何测试。让我们按照以下方式更新我们的package.json文件: { ... "scripts": { "test": "jest --watc ......
Typescript TDD