在我的应用程序中,我在componentDidMound中使用了第三方插件,这看起来像这样:
clickStuff: function () {
//do stuff
},
componentDidMount: function () {
$(".whatever").on { 'click', function() {
this.clickStuff();
}.bind(this));
}
这允许它在哪里,如果我点击任何div与类"无论"转到反应功能" clickStuff()&#34 ;;
但是,如果我想得到"这" jquery节点。就像$(" .whatever")的属性一样?例如:
componentDidMount: function () {
$(".whatever").on { 'click', function() {
//this will cause conflict between the two this
$(this).attr("title", this.state.titleMessage);
}.bind(this));
}
$(this)中的这个应该是jquery节点,而这个在" this.state.titleMessage"应该是反应部分。
你如何让两者成为同一个功能的一部分?或者我需要做些喜欢的事吗?我对如何做到这一点感到有些困惑。我不知道该怎么称呼这个问题。
答案 0 :(得分:1)
旧方式:
componentDidMount: function () {
var that = this;
$(".whatever").on { 'click', function() {
//that is the this of componentDidMount (and so of clickStuff)
that.clickStuff();
//this remains the same
$(this).attr("title", that.state.titleMessage);
});
}