【发布时间】:2018-02-23 02:26:30
【问题描述】:
我只是一个继承了一些 TypeScript 代码的可怜程序员。有时你只是想知道发生了什么,而不需要花几周的时间来流利地使用一门新语言。我有一个界面:
interface IJQuery {
addRecordInline(object: any);
}
我在 addRecordInline 上遇到错误:
“命名属性类型 '(object any) => any' 必须可分配给字符串索引器类型 'HTMLElement':类型 'HTMLElement' 具有非可选属性 'accessKey',它在类型 '(object any) 中不存在=> 任何'
任何关于正在发生的事情的线索都将不胜感激。我浏览了互联网......有一些关于索引器的帖子似乎最接近。但是这里发生了什么?只是指向一些信息的指针。谢谢。
编辑:
正在实现的接口示例:
interface IDocumentManager {
UpdateForm: IJQuery;
UpdateActionUrl: string;
DocIdPrefix: string;
}
第二次编辑:
这是一个实现接口的类:
class MemberDocumentManager implements IDocumentManager {
private ConfirmDeleteButton: IJQuery;
// other declarations removed
constructor() {
this.ConfirmDeleteButton = $('#deleteConfirmButton');
}
}
一个 JQuery 对象被分配给一个实现相关接口的成员,这是问题所在吗?
【问题讨论】:
-
你在哪里实现那个接口?
-
据我所知,该接口已分配给其他接口的成员:“接口 IDocumentManager { UpdateForm: IJQuery; } 和其他相同的情况。
-
代码还是太少了。错误是类型和值不匹配,所以我们需要查看值(你实现了吗)
标签: javascript typescript