Mat*_*ord 6 javascript fabricjs angularjs typescript
我在我试图转换为使用TypeScript的项目中使用fabricjs,但我无法弄清楚如何使用它.以前我通过执行以下操作创建自己的自定义对象:
my.namespace.Control = fabric.util.createClass(fabric.Object, {
id: "",
type: 'Control',
color: "#000000",
...
});
Run Code Online (Sandbox Code Playgroud)
在我的新项目中,我已经从这里安装了TypeDefinition文件,但我无法弄清楚应该如何使用它?
查看.d.ts文件,fabric.Object似乎不是一个Function,所以不允许传递给createClass,而createClass本身返回void,所以我不能将值赋给变量.
即使所有这些都有效,我应该如何格式化它以便它以TypeScript方式工作?即,我要导出什么,以便我可以将其导入到需要Control类的其他位置?
有人真的有这样做的例子吗?
小智 -1
使用 Fabricjs.d.ts 的旧方法位于文件顶部:
/// <reference path="path/to/your/fabricjs.d.ts" />
Run Code Online (Sandbox Code Playgroud)
如果您通过tsd获得它,则必须引用您的 tsd.d.ts 捆绑文件
但现在使用 typescript 1.6.2 和vscode,您只需通过 tsd 下载参考文件即可获取代码中的定义。
在 d.ts 文件中,您可以找到 2 个方法签名:
createClass(parent: Function, properties?: any): void;
createClass(properties?: any): void;
Run Code Online (Sandbox Code Playgroud)
因此,您的代码似乎无效,因为作为接口 IObjectStatict 的 Fabric.Object 无法分配给类型 Function。您可以将 Fabric.Object 作为函数进行转换
my.namespace.Control = fabric.util.createClass(<Function>fabric.Object, {
id: '',
type: 'Control',
color: '#000000',
...
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2621 次 |
| 最近记录: |