Tôi đang cố gắng để tăng cường cho định nghĩa kiểu Sinon cho dự án của chúng tôi, đây là cách Sinon.d.ts
được định nghĩaTăng cường biện một Module nguyên cảo
declare module 'sinon' {
module Sinon {
interface SinonStub extends SinonSpy {
...
}
interface SinonStatic { ... }
...
}
var Sinon: Sinon.SinonStatic;
export = Sinon;
}
Tôi có một definitions.d.ts
mà tôi sử dụng trong dự án của tôi đối với bất kỳ định nghĩa tùy chỉnh. Đây là cách tôi đã cố gắng để làm điều đó:
declare module 'sinon' {
module Sinon {
interface SinonPromise {
resolves(value?: any): void;
rejects(value?: any): void;
}
interface SinonStub {
returnsPromise(): SinonPromise;
}
}
}
Nhưng trình biên dịch không nhận ra mới returnsPromise
trong giao diện SinonStub
, cũng không nhận ra mới SinonPromise
loại.
Có gì sai với định nghĩa đó?
Tôi đã có cùng một vấn đề khi viết các định nghĩa cho 'sinon-as-promised' và 'sinon-mongoose' khi tôi sử dụng kiểu gõ để lấy định nghĩa npm. – stevehipwell
N.B. Các mô-đun (mô đun nội bộ) không được khuyến khích trong TypeScript, chúng đề xuất các mô-đun JavaScript ES6 (các mô-đun bên ngoài hoặc chỉ các mô đun) thay vì các mô-đun dựa trên không gian tên cũ. Xem https://www.typescriptlang.org/docs/handbook/modules.html và https://www.typescriptlang.org/docs/handbook/namespaces-and-modules.html –
@JuanMendes không có tác dụng, tôi đã không 't sản xuất các kiểu chữ cho sinon, tôi đang sử dụng chúng và cần phải tăng thêm một số chức năng tùy chỉnh. – vintem