Javascript React-类的实例创建和使用
我正在尝试获取ActionEditor类的实例,以便以后能够使用它的方法:Javascript React-类的实例创建和使用,javascript,node.js,reactjs,jsx,Javascript,Node.js,Reactjs,Jsx,我正在尝试获取ActionEditor类的实例,以便以后能够使用它的方法: function render() { const toRender = responseActions.map((actionInstance) => { currentActionEditing=actionInstance; return <li>{ actionInstance === expandedAction ? <ActionEditor i
function render() {
const toRender = responseActions.map((actionInstance) => {
currentActionEditing=actionInstance;
return <li>{ actionInstance === expandedAction ? <ActionEditor id={actionInstance.title} action={getActionByKey(actionInstance.actionType)} instance={actionInstance} state={actionInstance} /> : <button onClick={createOnClick(actionInstance)}>{actionInstance.title}</button>}</li>;
});
ReactDOM.render(
<div>
<div>{toRender}</div>
<button style={styleButtonGenerate} onClick={onGenerateClick}>Generate</button>
</div>,
document.getElementById('root')
);
}
但结果总是空的/未定义的。
我知道这不是最好的例子,但足以说明这个问题。
有办法解决这个问题吗?我认为您希望在这里将a保存到组件以便可以访问它,请参见下面的示例中如何从父组件调用sayHi方法 类MyComponent扩展了React.Component{ 早希{ console.log'hi'; } 渲染{ 返回我是一个组件! } } 类应用程序扩展了React.Component{ 渲染{ //这只是一种显示如何访问子组件方法的方法。 设置超时=>{ this.node.sayHi; }, 1000 返回this.node=node}/> } } ReactDOM.render、document.querySelectorbody
您没有在React中思考—您在React中创建的组件应该很少有这样的命令式方法(如果有的话)。如果需要一组函数,只需在模块中创建它们。用例是什么?我们试图创建一个编辑器,用一种方法保存其中的内容
function onGenerateClick() {
var editor = document.getElementById(currentActionEditing.title);
editor.prototype = ActionEditor;
editor.methodIWantToUse();
}