Javascript Meteor React-发布/订阅不工作
我不知道哪里出了问题,但这是我在imports/api中的代码Javascript Meteor React-发布/订阅不工作,javascript,mongodb,reactjs,meteor,Javascript,Mongodb,Reactjs,Meteor,我不知道哪里出了问题,但这是我在imports/api中的代码 import { Mongo } from 'meteor/mongo'; Blogposts = new Mongo.Collection('blogposts'); if (Meteor.isServer) { Meteor.publish('allBlogposts', function () { return Blogposts.find({}); }); } 在我的前端jsx文件中: import
import { Mongo } from 'meteor/mongo';
Blogposts = new Mongo.Collection('blogposts');
if (Meteor.isServer) {
Meteor.publish('allBlogposts', function () {
return Blogposts.find({});
});
}
在我的前端jsx文件中:
import React from 'react';
import ReactDOM from 'react-dom';
import TrackerReact from 'meteor/ultimatejs:tracker-react';
Blogposts = new Mongo.Collection('blogposts');
export default class BlogPage extends TrackerReact(React.Component) {
constructor(props) {
super(props);
this.state = {
subscription: {
blogposts: Meteor.subscribe('allBlogposts')
}
}
}
但是,从那里,我似乎无法访问数据库中的任何数据。如果我使用控制台日志,我将从服务器向数据库添加两条记录
我如何才能让它在返回这两个文档的简单控制台日志中工作
# api
import { Mongo } from 'meteor/mongo';
export default Blogposts = new Mongo.Collection('blogposts');
if (Meteor.isServer) {
Meteor.publish('allBlogposts', function () {
return Blogposts.find({});
});
}
组成部分
import React, { Component } from 'react';
import ReactDOM from 'react-dom';
import PropTypes from 'prop-types';
import { withTracker } from 'meteor/react-meteor-data';
#import your api
import { Blogposts } from "whatever/the/dir/is.js
class BlogPage extends Component {
# Everything here
}
#you write this function outside your component
BlogPage.propTypes = {
currentUserPost: PropTypes.array.isRequired,
};
export default withTracker(()=>{
Meteor.subscribe("allBlogposts");
return {
currentUserPost: Blogposts.find()
}
})(BlogPage);
组成部分
import React, { Component } from 'react';
import ReactDOM from 'react-dom';
import PropTypes from 'prop-types';
import { withTracker } from 'meteor/react-meteor-data';
#import your api
import { Blogposts } from "whatever/the/dir/is.js
class BlogPage extends Component {
# Everything here
}
#you write this function outside your component
BlogPage.propTypes = {
currentUserPost: PropTypes.array.isRequired,
};
export default withTracker(()=>{
Meteor.subscribe("allBlogposts");
return {
currentUserPost: Blogposts.find()
}
})(BlogPage);
您是否从
imports/api
显式导入此代码?@styx是的,这就是我拥有Mongo集合的地方。访问此Blogposts
集合的代码在哪里?您能告诉我们如何测试数据吗?您在哪里访问和呈现它?您是否从imports/api
显式导入此代码?@styx是的,这就是我的Mongo集合。访问此Blogposts
集合的代码在哪里?您能告诉我们如何测试数据吗?您在哪里访问和渲染它?