Ich habe auf einige ähnliche Fragen verwiesen, aber ich habe eine Situation wenig anders.Reagieren: Rufen Sie eine Funktion von innen Render-Funktion
Call a React Function from inside Render
How to Call a Function inside a Render in React/Jsx
React: Cant call a function inside child component
export default class CodeEditor extends React.Component {
appendAssets(asset) {
console.log(asset)
this.refs.editor.editor.insert(`player.asset('${asset}')`)
this.refs.editor.editor.focus()
}
render() {
function sequenceHierarchy (data, outputArray) {
level++
data.forEach(function (asset){
outputArray.push(<li className={`level_${level}`}><button onClick={_ => this.appendAssets(asset.name)}>{asset.name}</button></li>)
if(asset.children.length) {
sequenceHierarchy(asset.children, outputArray)
}
})
level--
}
}
}
So ist die onClick
der Taste innerhalb sequenceHierarchy
Funktion hat appendAssets
zu nennen. Natürlich, da this
nicht in der Lage wäre, es zu nennen, da es nicht der Teil dieser Komponente ist, habe ich auch versucht, mit nur appendAssets(asset.name)
, noch gibt es einen Fehler von Uncaught ReferenceError: appendAssets is not defined
Dank Hardik. Das hat mir geholfen. –
Froh, dass es geholfen hat :) –