我想解析数据,我收到的组件加载渲染。
我有这样一种状态:
constructor(props) {
super(props);
this.state = {
loading: true,
data: []
}
}
这个组件安装在:
componentDidMount() {
var post = [];
var feedRef = firebase.database().ref().child('posts').limitToLast(10);
feedRef.once('value', async (snapshot) => {
post.push(
Object.assign(snapshot.val(), {
key: snapshot.key,
user: snapshot.user,
img: snapshot.img
})
)
this.setState({ data: post, loading: false });
console.log(this.state.data); // has the data
});
}
下面是解析数据的步骤:
{this.state.data.map(post => {
return(
<div>
<img src={post.img} />
</div>
)
})}
问题是,尽管我的数据处于状态,但它并没有在render中进行解析。你知道怎么了吗?
我还有一个错误:索引。js:1警告:列表中的每个孩子都应该有一个唯一的“键”道具。
我的数据是错误的:控制台。日志:
Array(1)
0:
-M7Y4RJMl1pd4ynwXPYJ: {img: "https://", user: "josh", userid: "T87u4DL82IaGO9X"}
-M7Y4RJMl1pdwXPYJ: {img: "https://", user: "josh2", userid: "T87u82IaGO9X"}
-M7Y4RXPYJ: {img: "https://", user: "josh3", userid: "T87u4DL82GO9X"}
-M7Y4RJMl1XPYJ: {img: "https://", user: "josh4", userid: "T87uaGO9X"}
img: undefined
key: "posts"
user: undefined
检查文件https://firebase.googleblog.com/2014/04/best-practices-arrays-in-firebase.html您需要将对象转换为数组,渲染中的贴图函数需要数组,但您使用的是对象
var obj = snapshot.val();
var arrayPosts = Object.keys(obj).map(function(key) {
return {
key,
user: obj[key].user,
img: obj[key].img
}
});
post = arrayPosts
如果你没有WebGL基础,可以先不用记忆每个的threejs 具体内容,有一个大致印象即可,学习本节课的重点是建立顶点的概念。如果你建立了顶点的概念,那么对于你深入理解学习Three.js很有帮助。 如果你已经有WebGL基础或者说图形学基础,说明你肯定有顶点的概念,本节课重点可以放在学习threejs的API使用细节,threejs引擎是如何封装webgl的。 JavaScript类型化数组 本
我在解析JSON中的数据时遇到了以下问题 这些节点是在我使用Firebase时生成的。push()方法。是否有方法获取所有节点并访问信息。我正在使用java并在google app engine上开发一个项目。
我试图从一个id呈现一个反应原生组件,它被赋予一个超文本传输协议请求,然后返回组件可以使用的json。由于超文本传输协议请求是异步的,因此传递到PostCard呈现中的数据是未定义的。我试图通过等待getSinglePost的返回来解决这个问题,但是数据仍然没有定义。如果不清楚,渲染函数调用renderCard函数,该函数应该等待getSinglePost函数的json,然后返回一个填充的Post
我已与以下用户手动导入数据库的JSON文件: 问题是当我以“Naseebullah”(naseebullah@kcl.ac.uk)登录时,我没有收到他的详细信息: 换句话说,我不知道他的名字,性别等等... 这是我进行身份验证的地方: 当用户通过电子邮件和密码进行身份验证时,如何从数据库中检索用户的详细信息?
在reactjs中,我试图从贴图对象渲染组件。更具体地说,按下一个按钮,我创建了一个新的“FormRow”组件,为了方便起见,我将其存储在javascript映射对象中(因为稍后我将使用它)。无论何时,我都想渲染刚刚添加的新组件,但我不知道如何从贴图中获取它。 我尝试以不同的方式解决我的问题,使用: myMap.for每个(key= 我没有尝试的是: https://stackoverflow.c
我知道Firebase云消息传递方便发送推送通知和数据消息。我正在使用Flutter的firebase_messaging pub接收设备中的通知。onMessage、onLaunch和onResume回调只有在通知被取消或单击后才会被调用。 但是,我想访问收到的消息,无论通知是否被驳回。有没有办法做到这一点,不管app是在前台、后台还是被终止?