流星=比;退出代码:8错误

Meteor => Exited with code: 8 Error

本文关键字:错误 代码 退出 流星      更新时间:2023-09-26

对流星有点陌生。在我运行cordova build和meteor add-platform (iOS和Android)并安装了所有先决条件之前,app运行良好,并使用dburles:factory播种数据库。现在我得到了下面的误差。我试过流星更新和流星重置,它没有补救。

=> Exited with code: 8
I20160623-16:15:58.340(-7)? 200               
I20160623-16:15:58.341(-7)? 0
I20160623-16:15:58.342(-7)? 0
I20160623-16:15:58.343(-7)? 0
I20160623-16:15:58.344(-7)? 0
I20160623-16:15:58.345(-7)? 0
I20160623-16:15:58.345(-7)? 0
I20160623-16:15:58.346(-7)? 0
I20160623-16:15:58.347(-7)? 0
I20160623-16:15:58.347(-7)? 0
W20160623-16:15:58.395(-7)? (STDERR) 
W20160623-16:15:58.396(-7)? (STDERR) /Users/johndow/.meteor/packages/meteor-tool/.1.3.4.zv5a90++os.osx.x86_64+web.browser+web.cordova/mt-os.osx.x86_64/dev_bundle/server-lib/node_modules/fibers/future.js:280
W20160623-16:15:58.396(-7)? (STDERR)                        throw(ex);
W20160623-16:15:58.396(-7)? (STDERR)                              ^
W20160623-16:15:58.423(-7)? (STDERR) Error: Factory: There is no factory named builders
W20160623-16:15:58.423(-7)? (STDERR)     at Function.Factory.get (packages/dburles:factory/factory.js:29:11)
W20160623-16:15:58.423(-7)? (STDERR)     at Function.Factory.build (packages/dburles:factory/factory.js:35:27)
W20160623-16:15:58.423(-7)? (STDERR)     at Function.Factory.create (packages/dburles:factory/factory.js:119:23)
W20160623-16:15:58.424(-7)? (STDERR)     at app/server/seeds/builders.js:11:15
W20160623-16:15:58.424(-7)? (STDERR)     at Function._.times (packages/underscore/underscore.js:1093:1)
W20160623-16:15:58.424(-7)? (STDERR)     at [object Object]._.(anonymous function) [as times] (packages/underscore/underscore.js:1149:1)
W20160623-16:15:58.424(-7)? (STDERR)     at app/server/seeds/builders.js:10:12
W20160623-16:15:58.425(-7)? (STDERR)     at /Users/johndow/Projects/jackpot/.meteor/local/build/programs/server/boot.js:304:5
=> Exited with code: 8
=> Your application is crashing. Waiting for file change.
以下是我的javascript文件:控制器 builders.js

  BuildersController = AppController.extend({
  waitOn: function() {
    return this.subscribe('builders'); 
  },
  data: {
    poo: Builders.find({})
  },
  onAfterAction: function () {
    Meta.setTitle('Builders');
  }
});
BuildersController.events({
  'click [data-action=doSomething]': function (event, template) {
    event.preventDefault();
  }
});
<

种子strong> builders.js

Meteor.startup(function() {
  Factory.define('builder', Builders, {
    name: function() { return Fake.sentence(); },
    rating: function() { return _.random(1, 5); }
  });
  if (Builders.find({}).count() < 100) {
    Builders.remove({});
    _(200).times(function(n) {
      Factory.create('builders');
    });
  }
});
<

出版物strong> builders.js

Meteor.publishComposite("builders",  function(limit) {
  return {
    find: function() {
      //set default limit
      limit = limit || 30;
      return  Builders.find({},{limit: limit});;
    }
    // ,
    // children: [
    //   {
    //     find: function(item) {
    //       return [];
    //     }
    //   }
    // ]
  }
});

集合

builders.js

Builders = new Mongo.Collection('builders');
Builders.helpers({
});
Builders.before.insert(function (userId, doc) {
  doc.createdAt = moment().toDate();
});

<template name="builders">
  <div class="template-builders">
    <div class="page-header">
      <h1>Builders</h1>
    </div>
    <h2>{{ pageTitle }}</h2>
    <ul class="list-group">
      {{#each poo}}
        <li class="list-group-item">{{ name }} <span class="label label-default">{{ rating }}</span></li>
      {{/each}}
    </ul>
  </div>
</template>

在您的app/server/seeds/builders.js中,您定义一个称为builder的工厂(单数),但是几行之后(第11行),当您使用该工厂创建对象时,您将其引用为builders(复数)。

这就是错误提示:

Error: Factory: There is no factory named builders

在您的终端或powershell中运行以下行:meteor add dburles:factory

以防万一,您可能想尝试使用Factory.define(...而不是Factory.create(

更多信息:https://atmospherejs.com/dburles/factory