📜  cypress 未定义 - TypeScript (1)

📅  最后修改于: 2023-12-03 15:14:24.678000             🧑  作者: Mango

Cypress 未定义 - TypeScript

当使用 TypeScript 时,在 Cypress 的测试代码中可能会出现 Cypress 未定义 的错误。这是因为 TypeScript 默认情况下不知道 Cypress 的类型声明,而 Cypress 并没有默认导出。

要解决这个问题,需要手动引入类型声明。在 Cypress 的官方文档中已经有了相关的说明:

https://docs.cypress.io/guides/tooling/typescript-support#Types-for-custom-commands

以下是一个例子,演示了如何通过手动引入类型声明,避免 Cypress 未定义 的错误:

// 在 Cypress 测试代码的顶部,引入以下核心类型声明:
/// <reference types="cypress" />

// 在 Cypress 插件代码的顶部,引入以下核心类型声明:
/// <reference types="cypress" />

// 如果有自定义命令,在自定义命令代码的顶部,引入以下类型声明:
declare namespace Cypress {
  interface Chainable<Subject> {
    // 这里是你的自定义命令的类型声明
  }
}

这样做可以让 TypeScript 知道 Cypress 对象的类型,并避免出现 Cypress 未定义 的错误。

简而言之,要在 TypeScript 中正确使用 Cypress,必须手动引入类型声明。