【发布时间】:2022-01-07 07:24:19
【问题描述】:
我经常遇到无法在 js 类中访问我的 js 类的函数的问题。 我主要用这个来修复它。或 bind(this) 但为什么这不起作用?它与我在另一个班级中这样做的方式完全相同。
class Page {
// constructor and props
ShowNewJobPopup() {
var popupNewJobElement = $("<div>").attr("id", "popupNewJob");
console.log(data, element);
}
InitializeFilterElements(filterItems) {
filterItems["Control"].Items.push({
Template: function (itemElement) {
itemElement.append("<div id=\"btnNeuerJob\" style=\"width: 100%; margin-top: 4px;\"></div>");
$("#btnNeuerJob").dxButton({
type: "default",
text: "Neuer Job",
disabled: false,
onClick: function () {
this.ShowNewJobPopup(); // how is this not a function
}.bind(this)
});
}
});
return filterItems;
}
}
当我在开发控制台中时。我可以写 Page.ShowNewJobPopup (Page 是附加的脚本)
【问题讨论】:
-
this.ShowNewJobPopup()->console.log(this)->this=#btnNeuerJob(可能没有勾选dxButton)
标签: javascript jquery function this devextreme