Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.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_Arrays_Object_Reactjs - Fatal编程技术网

Javascript 访问包含对象的数组

Javascript 访问包含对象的数组,javascript,arrays,object,reactjs,Javascript,Arrays,Object,Reactjs,我尝试从道具访问数据 像this.props.teachers它在控制台上检索我对象{},当我尝试this.props.teachers[0]时,返回未定义的和this.props.teachers[0]。age检索错误,因为无法访问未定义的 我做错了什么 这是代码snipet var React = require('react'); var Router = require('react-router'); var helpers = require('../utils/helpers')

我尝试从道具访问数据

this.props.teachers
它在控制台上检索我
对象{}
,当我尝试
this.props.teachers[0]
时,返回未定义的和
this.props.teachers[0]。age
检索错误,因为无法访问未定义的

我做错了什么

这是代码snipet

var React = require('react');
var Router = require('react-router');
var helpers = require('../utils/helpers');

var ResultList = React.createClass({
    getInitialState: function(){
     return{
        usersDataArr:{},
     }

    },
    componentWillMount : function() {
        helpers.getAvaiabilityResults(this.props.params.places,this.props.params.branch,this.props.params.dayOfMonth,this.props.params.timeStart,this.props.params.timeEnd)
        .then(function(data){
            this.setState({
                usersDataArr:data.AvaiabilityResults
            })
        }.bind(this))


    },
    render: function(){
                return(

            <div>
                ResultList
                <Results teachers={this.state.usersDataArr[0]} />
           </div>
            );
    }
});
var Results = React.createClass({
    componentDidMount: function() {
        console.log(this.props.teachers);
    },
    render: function() {

        return (
            <h1>Results</h1>
        );
    }
});

module.exports = ResultList;
var React=require('React');
var-Router=require('react-Router');
var helpers=require('../utils/helpers');
var ResultList=React.createClass({
getInitialState:函数(){
返回{
usersDataArr:{},
}
},
componentWillMount:function(){
helpers.getAvailabilityResults(this.props.params.places,this.props.params.branch,this.props.params.dayofmon,this.props.params.timeStart,this.props.params.timeEnd)
.then(功能(数据){
这是我的国家({
usersDataArr:data.availabilityResults
})
}.绑定(本)
},
render:function(){
返回(
结果列表
);
}
});
var Results=React.createClass({
componentDidMount:function(){
console.log(this.props.teachers);
},
render:function(){
返回(
结果
);
}
});
module.exports=结果列表;

你能分享可执行的演示/代码片段吗?我想你在某处丢失了这个,对数组项的访问很好:
var a={a:[{test:1}]};console.log(a.a[0].test)
问题在于,直到两个组件都挂载后,才加载数据。感谢IRC上的GreenJello