问题:当我的React组件调用导出的函数时,console.log(this)
显示为undefined。我期待它返回组件,因为我已经将它绑定在我的构造函数中。
Leaderboard.js:
import React from 'react';
import {leaderboard, createLeaderboard} from '../utility/gamecode';
class Leaderboard extends React.Component{
constructor(props){
super(props);
this.showLeaderboard = showLeaderboard.bind(this);
this.state = {
}
};
componentDidUpdate(){
if(this.props.leaderboard){
showLeaderboard();
}
}
render(){
return(
<div className="leaderboard hidden">
</div>
)
}
}
export default Leaderboard;
gamecode.js:
export function showLeaderboard(){
console.log(this);
}
//-----------------------
export function createLeaderboard(props){
}
答案 0 :(得分:6)
您正在呼叫showLeaderboard
而不是this.showLeaderboard
- 您绑定this
的人。{/ p>