我正在尝试转换JavaScript代码
if (window.ifEdit.editIsDirty()) { }
Run Code Online (Sandbox Code Playgroud)
到打字稿.我得到了以下内容
var iframe = document.getElementById('ifEdit');
var iWindow = <HTMLIFrameElement>(iframe).contentWindow;
var _editIsDirty = iWindow.editIsDirty();
Run Code Online (Sandbox Code Playgroud)
我在'contentWindow'和'editIsDirty'下得到了红色的曲线,说方法/属性在类型上不存在..ts不会编译为.js文件.
我搜索过,但没有设法找到解决方案.
Nit*_*mer 12
对于该contentWindow部分,您的代码的问题是转换是错误的,应该是:
var iWindow = (<HTMLIFrameElement> iframe).contentWindow;
Run Code Online (Sandbox Code Playgroud)
至于editIsDirty它,它不是标准的属性Window.
如果它是在您运行javascript的环境中添加的内容,那么您需要声明它如下:
interface IfEdit {
editIsDirty(): boolean;
}
interface Window {
ifEdit: IfEdit;
}
var iframe = document.getElementById("ifEdit");
var iWindow = (<HTMLIFrameElement> iframe).contentWindow;
var _editIsDirty = iWindow.ifEdit.editIsDirty();
Run Code Online (Sandbox Code Playgroud)
使用Playground中的代码.
| 归档时间: |
|
| 查看次数: |
4436 次 |
| 最近记录: |