Exception im Template-Helfer: TypeError: Eigenschaft 'profile' von undefined @ kann nicht gelesen werd

Nun hatte ich ein ähnliches Problem, bevor ich diesen Fehler bekam:

Exception im Template-Helfer: TypeError: Eigenschaft 'profile' von undefined @ kann nicht gelesen werd

Das gleiche passiert wieder, aber in zweiter Ordnung, die Profilinformationen eines anderen Benutzers enthält (das erste Profil ist definiert). Wie kann ich es in {{#each orders}} erneut rendern lassen?

Es scheint auch, dass info.firstName, lastName und building aus irgendeinem Grund dreimal aufgerufen werden, wenn es nur zwei Bestellungen gibt ...

In HTML:

<template name="orderItem">
  <section>
    <form role="form" id="ordersList">
      <div>
        {{#each orders}}
          <input type="text" name="name" value="{{info.firstName}} {{info.lastName}}">
        {{/each}}
      </div>
      <div>
        {{#each orders}}
          <input type="text" name="building" value={{info.building}}>
        {{/each}}
      </div>
      <div>
        {{#each orders}}
          <input type="text" name="featuredDish" value={{featuredDish}}>
        {{/each}}
      </div>
    </form>
  </section>
</template>

In Javascript:

Template.orderItem.orders = function() {
  var todaysDate = new Date();
  return Orders.find({dateOrdered: {"$gte": todaysDate}});
};

Template.orderItem.info = function() {
  var userId = this.userId;
  var user = Meteor.users.findOne(userId)
  var firstName = user.profile.firstName;
  var lastName = user.profile.lastName;
  var building = user.profile.building;

  return {
    firstName: firstName,
    lastName: lastName,
    building: building
  }
};

Schätzen Sie die Hilfe!

Antworten auf die Frage(1)

Ihre Antwort auf die Frage