流星集合db.find()不是函数(中期开发)

时间:2017-06-02 23:42:19

标签: reactjs meteor

好的我不知所措。编写Meteor React应用程序......它创建了一个集合,并且仍然可以完成该部分。我最近上传了一个货币格式化程序:来自npm的react-currency-input,它做了我想要的并写入mongo db,我可以从终端访问而没有问题。

但是在运行我的应用程序时,它给了我两个新的原因,它崩溃了,我不知道为什么:

  1. 警告:不建议通过主React包访​​问PropTypes。请改用npm中的prop-types包。
  2. 这很奇怪,因为我没有在我的反应中的任何地方定义proptypes。

    2。 未捕获的TypeError:Tickets.find不是函数

    它在错误中引用此代码:

    export default class TicketList extends React.Component {
      constructor (props) {
          super(props);
          this.state = {
            tickets: []
          };
        }
        componentDidMount() {
          console.log('componentDidMount TicketList');
          this.ticketTracker = Tracker.autorun(() => {
            Meteor.subscribe('tickets');
            let tickets = Tickets.find({}).fetch();
            this.setState({ tickets });
          });
        }
        componentWillUnmount() {
          console.log('componentWillUnmount TicketList');
          this.ticketTracker.stop();
        }
    

    有没有人知道我可以从哪里开始调试这个或者为什么我会突然发现这些新错误?

1 个答案:

答案 0 :(得分:0)

是的,正如@John Smith指出的那样 - 我的门票收藏不再是默认导出,因此无论我在哪里导入它都必须添加{},这解决了主要问题。谢谢!