【问题标题】:TypeError: Employees.find is not a function from meteor withTrackerTypeError:Employees.find 不是来自流星的函数 withTracker
【发布时间】:2018-05-03 15:31:37
【问题描述】:

首先使用 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 );

Employees 是我的 mongodb 集合

employees.js

import { Mongo } from 'meteor/mongo';    
export const Employees = new Mongo.Collection('employees');

【问题讨论】:

    标签: reactjs meteor


    【解决方案1】:

    您使用命名导出:

    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;
    

    【讨论】:

      猜你喜欢
      • 2016-07-11
      • 2015-11-23
      • 2019-02-10
      • 1970-01-01
      • 2014-08-04
      • 1970-01-01
      • 1970-01-01
      • 2018-02-04
      • 1970-01-01
      相关资源
      最近更新 更多