javascript - Làm thế nào để thêm kiểu cho Cypress.env?
Tôi có tệp cấu hình cypress.json này:
{
"env": {
"example": "Hello World!"
}
}
Trong các thử nghiệm của tôi:
Cypress.env("example")
Tôi có thể thêm bất kỳ loại định nghĩa nào vào hệ thống env không? (để làm việc với Typescript hoặc eslint) Tôi rất muốn sử dụng intellisense ở đây.
Câu trả lời #1
Từ cypress.d.ts
interface Cypress {
/**
* Returns specific environment variable or undefined
* @see https://on.cypress.io/env
* @example
* // cypress.json
* { "env": { "foo": "bar" } }
* Cypress.env("foo") // => bar
*/
env(key: string): any
}
vì vậy bạn có thể mở rộng nó với
declare namespace Cypress {
interface Cypress {
env(key: "example"): string
}
}
cái này cung cấp intellisense (phương thức) Cypress.Cypress.env(key: "example"): string (+6 cách nạp thêm)
Câu trả lời #2
Theo tài liệu:
Cypress.env("myOwnTypeKey", {
value: "yourOwnKey",
type: "myOwnTypeClass"
});
nên đặt một biến cụ thể với myOwnTypeKey. Sau đó bạn có thể kiểm tra nếu "yourOwnKey" bằng cách gọi instanceof "myOwnTypeClass".
Giá trị cũng có thể là một đối tượng phức tạp.
