首先使用createContainer来订阅数据,但它会抛出名为:
的错误Uncaught TypeError: CreateContainer is not a function
react-meteor-data: React higher-order component for reactively tracking Meteor data
Warning - createContainer was deprecated in react-meteor-data@0.2.13. Use withTracker instead
然后改为withTracker但收到错误:
Uncaught TypeError: Employees.find is not a function
Employee_list.js
import React from 'react';
import Employees from '../../imports/collections/employees';
import { withTracker } from 'meteor/react-meteor-data';
const EmployeeList = (props) => {
console.log(props);
return(
<div>
<div className = "employee-list">
Employee list
</div>
</div>
)
}
export default withTracker ( () => {
const handle = Meteor.subscribe('employees');
//return { employeesd: Employees.find({}).fetch() };
return {
listLoading: !handle.ready(),
tasks: Employees.find({}).fetch(),
};
})( EmployeeList );
员工是我的mongodb集合
employees.js
import { Mongo } from 'meteor/mongo';
export const Employees = new Mongo.Collection('employees');
答案 0 :(得分:0)
您使用命名导出:
export const Employees = new Mongo.Collection('employees');
但尝试使用默认导出:
import Employees from '../../imports/collections/employees';
<强>修正:强>
import { Employees } from '../../imports/collections/employees';
或
const Employees = new Mongo.Collection('employees');
export default Employees;