tôi là tạo ra một tập tin d.ts cho webgl-utils.js từ googlelàm thế nào tôi sẽ khai báo một 'khỉ vá' nguyên mẫu trong nguyên cảo
Tôi có một vấn đề với một trong những dòng cuối cùng mà một phương pháp trong một đối tượng toàn cầu là 'khỉ vá' (tôi nghĩ rằng đây là thuật ngữ bên phải)
dòng vấn đề đọc:
/**
* Provides requestAnimationFrame in a cross browser way.
*/
window.requestAnimFrame = (function() {
return window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
window.oRequestAnimationFrame ||
window.msRequestAnimationFrame ||
function(/* function FrameRequestCallback */ callback, /* DOMElement Element */ element) {
window.setTimeout(callback, 1000/60);
};
})();
Làm thế nào tôi có thể tuyên bố này trong tập tin nguyên cảo của tôi vì vậy tôi sẽ không nhận được biên dịch lỗi khi tôi sử dụng chức năng:
function tick()
{
requestAnimFrame(tick);
drawScene();
}
bây giờ tôi đã cố gắng:
interface window
{
requestAnimFrame(): any;
}
Nhưng điều này không loại bỏ các lỗi:
The name 'requestAnimFrame' does not exist in the current scope
Bạn đã cố gắng đặt tiền tố một cách rõ ràng với 'window.'? – Bergi
Có, điều đó cũng cung cấp lỗi giống hệt nhau – Toad
, phần intellisense trong VisStudio không hiển thị phương thức. Nó hiển thị bình thường: requestAnimationFrame() nhưng không hiển thị thông tin mới – Toad