javascript - 通过变量引用修改函数时将 Javascript 转换为 Typescript

标签 javascript typescript

我正在尝试将 JavaScript 代码文件转换为 TypeScript 文件,但是,当遇到通过变量引用修改函数时,我很难做到这一点。

在javascript中,代码写成:

  Object.getPrototypeOf(ctx).rounded_rect = function(){

  }

哪里ctx是 Canvas 渲染上下文 2d 变量

如何将此代码转换为 typescript 代码?当我将其复制并粘贴到 typescript 文件时,它显示错误:Property 'rounded_rect' does not exist on type 'CanvasRenderingContext2D'.

另外,这行代码叫什么?

最佳答案

您需要扩展原生原型(prototype),这需要首先声明:

declare global {
   interface  CanvasRenderingContext2D {
      rounded_rect() : void;
   }
}

之后就可以实现它了:

CanvasRenderingContext2D.prototype.rounded_rect = function(){
 /*whatever*/
};

可引用this类似的答案...

关于javascript - 通过变量引用修改函数时将 Javascript 转换为 Typescript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47102058/

相关文章:

javascript - AngularJS:两种方式的数据绑定(bind)在嵌套的 ng-repeat 中不起作用

javascript - 当用户使用 mCustomScrollbar onTotalScroll 到达结束滚动时,如何加载内容?

javascript - 如何将 angularJS 应用程序转换为 angular

javascript - Breeze 类型 getProperty 方法不适用于 Typescript

typescript - TypeScript 能否验证 .js 文件是否与其自身的 .d.ts 声明一致?

javascript - 如何在 Body 标签内使用 JSON 返回的数据

javascript - 即使在javascript中的页面刷新时,如何保留范围 slider 的最后拖动位置

node.js - Sequelize `findOne` 工作不如预期

javascript 将鼠标悬停在一个元素上并影响另一个元素

angular - 在 Angular 6 中滚动结束时禁用按钮