我想在一些嵌入式html中调用一个函数。我尝试了以下操作,但未调用该函数。这是在render方法内调用函数的错误方法吗?
import React, { Component, PropTypes } from 'react';
export default class PatientTable extends Component {
constructor(props) {
super(props);
this.state = {
checking:false
};
this.renderIcon = this.renderIcon.bind(this);
}
renderIcon(){
console.log("came here")
return(
<div>Function called</div>
)
}
render() {
return (
<div className="patient-container">
{this.renderIcon}
</div>
);
}
}
解决的方法是接受的答案。但是,如果有人想知道它为什么起作用以及为什么SO问题中的实现不起作用,
首先,函数是JavaScript中的一流对象。这意味着它们像其他任何变量一样被对待。函数可以作为参数传递给其他函数,可以由另一个函数返回,也可以作为值分配给变量。在这里阅读更多。
因此,我们使用该变量在末尾添加括号() 来调用该函数。
一件事,如果您有一个返回函数的函数,而您只需要调用该返回的函数,则在调用外部函数()()时,您可能会遇到双重假名。