Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从子级渲染父级_Javascript_Reactjs - Fatal编程技术网

Javascript 从子级渲染父级

Javascript 从子级渲染父级,javascript,reactjs,Javascript,Reactjs,专家们 我的反应有问题。我正在尝试通过回调从子对象呈现父对象。假设addTask函数将调用父组件的呈现。但它不起作用,我也不知道为什么。 这是代码。如有任何帮助,我们将不胜感激 var tasks = [ { type : "Personal", task_list : [ "Visit laundty", "Mend bike", "Call mom"] }]; var AddTask = React.createClass({ getInitialState : function()

专家们

我的反应有问题。我正在尝试通过回调从子对象呈现父对象。假设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_')
var任务=[
{类型:“个人”,
任务列表:[
“参观朗蒂”,
“修理自行车”,
“打电话给妈妈”]
}];
var AddTask=React.createClass({
getInitialState:函数(){
返回{
加:假
};
},
addTask:函数(e){
e、 预防默认值();
var task=document.getElementById('taskText')。值;
var arr=tasks[0]。任务列表。推送(任务);
console.log(任务[0]。任务列表);
this.setState({add:true});
this.props.callback;
},
render:function(){
返回(
多恩
)
}});
var Tasks=React.createClass({
render:function(){
var list=this.props.ddata.map(函数(项,索引){
返回(
  • {item}
  • ) }) 返回
      {lists}
    ; } }); var App=React.createClass({ getInitialState:函数(){ 返回{ 更新:1 }; }, 更新:职能(e){ 日志(“更新!”); }, render:function(){ var-chpt; var-key=0; var p_=新数组(); 如果(tasks.length>0){ var chpt=tasks.map(函数(项、索引){ 返回( {item.type} this.update}/> ) }) }否则{ chpt=

    } 返回( {chpt} ); } }); ReactDOM.render( , document.getElementById('main_')
    您正在引用
    此.props.callback
    但未调用它。添加括号以调用函数:

    this.props.callback();
    

    发生了什么事?是否有错误?请在此处输入您遗漏的.code>)ReactDOM.render(,document.getElementById('main_41;)。你面临的错误是什么