从jQuery v2迁移到jQuery v3时,不推荐使用类型定义上的BaseJQueryEventObject等接口。
代码的替代品是什么?
例如,对于angularjs,我们有这样的函数:
#include <vector>
#include <algorithm>
struct SomeObj
{
int i;
};
class MyVector {
public:
using itr = std::vector<SomeObj>::iterator;
using citr = std::vector<SomeObj>::const_iterator;
itr begin() { return things_.begin(); }
itr end() { return things_.end(); }
citr begin() const { return things_.begin(); }
citr end() const { return things_.end(); }
private:
std::vector<SomeObj> things_;
};
int main()
{
MyVector objs;
for (auto& obj : objs)
{
// ....
}
std::for_each(objs.begin(), objs.end(), [](auto& o) { o.i = 1;});
for (auto i = objs.begin(); i != objs.end(); ++i)
{
i->i = 1;
}
return 0;
}
我们收到这样的消息:
public keyDown($event: JQueryEventObject) {
alert ($event.keyCode);
}
答案 0 :(得分:7)
我不确定角度,但是,使用最新的Typescript和JQuery我将我的函数签名更改为:
public keyDown($event: JQuery.Event) {
alert ($event.keyCode);
}
答案 1 :(得分:1)
我有同样的问题,但我解决了它
public keyDown($event: KeyboardEvent) {
alert ($event.keyCode);
}