我正在尝试使用以下命令从TS1.6中的剪贴板访问数据:
$(container).bind("paste", (e) => { var data = e.originalEvent.clipboardData.getData('text'); });
但它只是给我以下构建错误:
类型'JQueryEventObject'上不存在属性'clipboardData'
如果我删除第二行并在Chrome 46中调试它,我只需通过调用即可获得剪贴板数据
e.originalEvent.clipboardData.getData('text');
我看不到clipboardData在jQuery.d.ts的最新版本的JQueryEventObject接口,但问题是 - 它应该是有还是有,从目前该TS支持剪贴板检索数据以不同的方式?
您可以使用["property"]方法绕过预期的打字稿类型
var pastedData = e.originalEvent["clipboardData"].getData('text');
似乎直到TS1.8,我发现的一个(hacky)选项只是扩展Event
为:
interface Event { clipboardData: any; }
我相信我可以通过更换any
更好的东西来改善这一点,但它现在有效.