Javascript 流星收集未加载

Javascript 流星收集未加载,javascript,node.js,mongodb,meteor,Javascript,Node.js,Mongodb,Meteor,因此,如果我通过meteor mongo访问数据库,在访问时键入db.Questions.find({}).count();它返回我的问题的值,1 witch是正确的,但由于某些原因,我的代码不起作用,如何修复此问题 database.js import { Mongo } from 'meteor/mongo'; Questions = new Mongo.Collection("Questions"); 路由器.js import '../imports/api/database.js'

因此,如果我通过meteor mongo访问数据库,在访问时键入db.Questions.find({}).count();它返回我的问题的值,1 witch是正确的,但由于某些原因,我的代码不起作用,如何修复此问题

database.js

import { Mongo } from 'meteor/mongo';

Questions = new Mongo.Collection("Questions");
路由器.js

import '../imports/api/database.js';

FlowRouter.route('/', {
    action: function() {
        BlazeLayout.render('MainPage');

        console.log(Questions.find({}).count());

        if(Meteor.isClient) {
          Template.register.events({
            'submit form'(event, template) {
              event.preventDefault();

              const EmailConst = template.find('#email').value;
              const UsernameCost = template.find('#username').value;
              const PasswordConst = template.find('#password').value;

              Accounts.createUser({
                username: UsernameCost,
                email: EmailConst,
                password: PasswordConst
              });
            }
          });

          Template.login.events({
            'submit form'(event, template) {
              event.preventDefault();

              const UsernameCost = template.find('#login-username').value;
              const PasswordConst = template.find('#login-password').value;

              Meteor.loginWithPassword(UsernameCost, PasswordConst);
            }
          });

          Template.logout.events({
            'click #LogoutUser'(event) {
              event.preventDefault();
              Meteor.logout();
            }
          })
        };

        Template.createquestion.events({
          'submit form'(event, template) {
            event.preventDefault();

            const QuestionNewSub = template.find('#question-subject').value;
            const QuestionBody = template.find('#question-area').value;
            const QuestionId = Math.floor((Math.random() * 9999999999) + 1);
            const QuestionUsername = Meteor.user().username;
            const QuestionNewActive = true;
            const creationDate = new Date();

            Questions.insert({
              id: QuestionId,
              poster: QuestionUsername,
              subject: QuestionNewSub,
              content: QuestionBody,
              active: QuestionNewActive,
              createdAt: creationDate
            });

            console.log("Question posted!");

          }
        })

        Template.getquestions.helpers({

          results() {
            Questions.find({
              active: true
            }).count();
          },

        });

    }
});

FlowRouter.route('/social', {
    action: function() {
        console.log("Yeah! We are on the social route!");
    }
});
main.js

import { Meteor } from 'meteor/meteor';

Meteor.onConnection(function() {
  import '../imports/api/database.js';
});

如果我不得不提问,你的问题可能与(而不是)发布/订阅有关

首先,在服务器上,您需要发布
问题
集合中要向模板公开的项目

if (Meteor.isServer) {
  // This code only runs on the server
  Meteor.publish('questions', function questionsPublication() {
    return Questions.find();
  });
}
然后,在客户端代码中,您需要订阅该出版物:

Template.getquestions.onCreated(function() {
  Meteor.subscribe('questions');
});