我使用parse作为我的应用程序后端,但我无法使用observe()方法接收数据,尽管我确信react与parse正确连接,因为我可以使用ParseAreact.mutation对数据进行变异。
import React from 'react';
import Parse from 'parse';
import ParseReact from 'parse-react';
const pinRegister = React.createClass({
mixins: [ParseReact.Mixin],
observe() {
return {
pins: (new Parse.Query('Pin'))
},
render() {
return {
<ul>
{this.data.pins.map(function(pin) {
return <li>{pin}</li>;
})}
</ul>
}
}
});
在控制台上,我收到这样的消息:"WebSocket连接到'ws://mywsaddress:8080/parse'失败:在收到握手响应之前连接已关闭",this.data.pins未定义,我检查了解析面板中的数据,Pin类具有正确的数据。
编辑:我在解析服务器上添加了liveQuery,套接字错误停止了,但我仍然无法接收数据,在chrome的控制台上,我得到了这个:Uncaught TypeError:this_subscriptions[name].dispose不是一个函数,这个问题来自parse-rect的代码:
_unsubscribe: function _unsubscribe() {
for (var name in this._subscriptions) {
this._subscriptions[name].dispose();
}
this._subscriptions = {};
},
您没有被正确地包括在ParseAreact.Mixin中。将"mixis"替换为"mixins"。
mixins: [ParseReact.Mixin]