0
我遇到了React問題。我試圖通過回調從孩子渲染父母。假設addTask函數會調用父組件的呈現。但它不工作,我不知道爲什麼。 這是代碼。將不勝感激的任何幫助。
var tasks = [
{ type : "Personal",
task_list : [
"Visit laundty",
"Mend bike",
"Call mom"]
}];
var AddTask = React.createClass({
getInitialState : function() {
return {
add: false
};
},
addTask: function(e) {
e.preventDefault();
var task = document.getElementById('taskText').value;
var arr = tasks[0].task_list.push(task);
console.log(tasks[0].task_list);
this.setState({add: true});
this.props.callback;
},
render: function() {
return (
<div
className='user_task'>
<textarea
className = 'usr_task_text' id='taskText' >
</textarea>
<button
type = 'button'
className='btn btn-primary usr_new_action_btn'
onClick = {this.addTask}> Done
</button>
</div>
)
}});
var Tasks = React.createClass({
render: function() {
var lists = this.props.ddata.map(function(item, index) {
return (
<li key={index}
className='user_task'>
{item}
</li>
)
})
return <ul> {lists} </ul> ;
}
});
var App = React.createClass({
getInitialState : function() {
return {
update: 1
};
},
update: function(e) {
console.log("updated!");
},
render: function() {
var chpt;
var key_ = 0;
var p_ = new Array();
if (tasks.length > 0) {
var chpt = tasks.map(function(item, index) {
return (
<div key = {index}>
<div
className = "user_header">
<span className="user_header_span" >
{item.type}
</span>
</div >
<AddTask callBack = {i => this.update}/>
<Tasks ddata = {item.task_list} />
</div>
)
})
} else {
chpt = <p></p>
}
return (
<div className="row">
<div className = "jumbotron col-md-3 user_act">
{chpt}
</div>
</div>
);
}
});
ReactDOM.render(
<App />,
document.getElementById('main_')
發生了什麼?有錯誤嗎?請包括[mcve]。 –
這裏您錯過了小錯字')'ReactDOM.render( , document.getElementById('main_'))。你面臨的錯誤是什麼? –
vijayscode