Javascript 如何访问JSON有效负载数据的内部?
我从我的后端服务器请求数据,我得到的正是这个控制台日志。Javascript 如何访问JSON有效负载数据的内部?,javascript,arrays,json,reactjs,ajax,Javascript,Arrays,Json,Reactjs,Ajax,我从我的后端服务器请求数据,我得到的正是这个控制台日志。 console.log(this.props.select) 我尝试过this.props.select.name,它说“TypeError:无法读取null的属性'name'” 我尝试了此.props.select[0],它显示“TypeError:无法读取null的属性“0” 我甚至尝试过const sel=JSON.parse(this.props.select)。不行 我怎样才能进入这里面 编辑: 这是actions/index.
console.log(this.props.select)代码>
我尝试过this.props.select.name
,它说“TypeError:无法读取null的属性'name'”
我尝试了此.props.select[0]
,它显示“TypeError:无法读取null的属性“0”
我甚至尝试过const sel=JSON.parse(this.props.select)代码>。不行
我怎样才能进入这里面
编辑:
这是actions/index.js中的内容
export const fetchSelectPage = () => async dispatch => {
const res = await axios.get('/api/select_page_info');
dispatch({ type: FETCH_SELECT_PAGE, payload: res.data });
};
这是selectPageReducer的内部
import { FETCH_SELECT_PAGE } from '../actions/types';
export default function(state = null, action) {
console.log("FETCH_SELECT_PAGE called!");
switch (action.type) {
case FETCH_SELECT_PAGE:
return action.payload || false;
default:
return state;
}
}
上面的初始状态为null。这就是我得到的。我意识到了这一点,但我仍然不明白为什么。因为数据是有效的,我不应该获取状态。您可能会看到null
记录在实际数组之前,对吗?该值将是第一次渲染期间状态的初始值,因为请求尚未完成。您需要处理这种情况,例如,通过加载指示器,如if(!this.props.select){returnload}
您可以共享实际获取数据的代码吗?@cbr它起作用了。非常感谢你。这是第二次这样的事情发生在我身上。我真的应该更加小心。
import { FETCH_SELECT_PAGE } from '../actions/types';
export default function(state = null, action) {
console.log("FETCH_SELECT_PAGE called!");
switch (action.type) {
case FETCH_SELECT_PAGE:
return action.payload || false;
default:
return state;
}
}