我有一个使用 React 开发的 Meteor 应用程序。我的项目中仍然有这个autopublish
包(autopublish@1.0.7
)。
这是我的相关代码:
主菜单.jsx
import React, { Component, PropTypes } from 'react'
import { Meteor } from 'meteor/meteor'
import { FlowRouter } from 'meteor/kadira:flow-router'
import { createContainer } from 'meteor/react-meteor-data'
import { ChatRooms } from '/imports/api/chatrooms.js'
export class MainMenu extends Component {
render() {
console.log(this.props.chatrooms)
return (
{/* Render stuff here is not part of the scope of this question */}
)
}
}
MainMenu.PropTypes = {
chatrooms: PropTypes.array.isRequired
}
export default createContainer(() => {
return {
chatrooms: ChatRooms.find({}).fetch()
}
}, MainMenu)
聊天室.js
import { Mongo } from 'meteor/mongo'
export const ChatRooms = new Mongo.Collection('chatrooms')
console.log(this.props.chatrooms)
组件中的总是MainMenu
返回一个空数组 ( []
)。
数据库中肯定有项目,Mongo
因为当我meteor mongo
在控制台中运行命令并键入db.chatrooms.find({});
它时,它会返回我插入的 3 个项目来测试这一切。
有人知道我在这里可能做错了什么吗?帮助将不胜感激!