好了这个代码访问数据,所以我有这样的代码在这里需要帮助搞清楚如何从reddit的API与ReactJS
componentDidMount() {
var _this = this;
var cbname = `fn${Date.now()}`;
var script = document.createElement("script");
script.src = `https://www.reddit.com/reddits.json?jsonp=${cbname}`;
window[cbname] = function(jsonData) {
_this.setState({
navigationItems: jsonData.data.children
});
delete window[cbname];
document.head.removeChild(script);
};
document.head.appendChild(script);
}
我想不出在所有如何访问reddit.json调用来检索数据,对于刚刚了解ReactJS如何工作的人来说,这看起来非常混乱。 而且这是状态+组件构造,其柜面需要:
export default class App extends React.Component {
constructor(props) {
super(props);
this.state = {
activeNavigationUrl: "",
navigationItems: [],
storyItems: [],
title: "Please select a sub"
};
}
对于代码的其余部分是指https://github.com/ssorallen/react-reddit-client,码片位于SRC/app.js
综观上述代码,我理解一切直到实例化脚本行.Src 之后,我不明白发生了什么,甚至窗口[cbname]部分。我试着用Google搜索它,但它太混乱了,特别是窗口[cbname]真正做了什么,以及为什么代码段在删除文档后将一个子文件(脚本)附加到文档头部。
谢谢!这完全解释了它 – adriam