流星+;反应:Can';无法从mongoDB集合获取数据
我有一个Meteor应用程序,我正在与React一起开发。我的项目中仍然有流星+;反应:Can';无法从mongoDB集合获取数据,mongodb,reactjs,meteor,collections,meteor-1.4,Mongodb,Reactjs,Meteor,Collections,Meteor 1.4,我有一个Meteor应用程序,我正在与React一起开发。我的项目中仍然有autopublish包(autopublish@1.0.7) 这是我的相关代码: main menu.jsx import React, { Component, PropTypes } from 'react' import { Meteor } from 'meteor/meteor' import { FlowRouter } from 'meteor/kadira:flow-router' import { cr
autopublish
包(autopublish@1.0.7
)
这是我的相关代码:
main menu.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.chattrooms)
组件总是返回一个空数组([]
)
Mongo
数据库中肯定有项目,因为当我在控制台中运行meteor Mongo
命令并键入db.chattrooms.find({})时代码>它返回我插入的3个项目来测试这一切
有人知道我可能做错了什么吗?非常感谢您的帮助 我已经弄明白了。我遗漏了整个过程中的一个关键步骤
在我的/server/main.js
文件中,我需要添加以下行来修复所有问题:
import '../imports/api/chatrooms.js
你在问题中的代码片段帮助我在我的第一个meteor+react+mongo应用程序中获取数据,这是我在过去4个多小时内无法实现的,谢谢:)很高兴这帮了你@adi:)我注意到一件奇怪的事情,我的代码在第一个类中没有这个片段就无法工作:componentDidMount(){Meteor.subscribe('projects');}