Mam następujące ustawienie wyświetlania moje zamówienie wg daty: ember.js komputerowa nie aktualizuje pozycję hasMany po sortowaniu
Mam następujący szablon, który pokazuje każde zamówienie dla danego tygodnia: (I odpędza niektóre html dla zwięzłość)
Szablon:
{{#each ordersByDate in ordersByDateOfWeek}}
<div class="orders-by-date">
<div>
<span>{{order-date-formatted ordersByDate.date}}</span>
</div>
{{#each order in ordersByDate.orders}}
{{order.number}} {{! updates correctly}}
{{order.market.name}} {{! a hasmany property called here, does not update}}
{{/each}}
</div>
{{/each}
obliczane nieruchomość:
ordersByDateOfWeek: function() {
var result = []; // return value
var object = null
var date = null;
// add every order to an array with a date an order objects
this.forEach(function (order) {
// get the date of the order
date = order.get('created');
// create a new object that holds the orders for a given date
object = result.findProperty('date', date);
// create the object if it does not exist
if (!object) {
object = {
date: date,
orders: [],
// some more
};
// add the object with the date to the result
result.push(object);
}
// add the orders to the current object
object.orders.push(order);
// more calculations done here below
});
}.property('model', 'sortProperties', 'sortAscending'),
Co robi jest, że tworzy tablicę obiektów tak:
[
{
"date":"2014-12-08",
"orders":[// order objects here],
// some more properties
},
{
"date":"2014-11-08",
"orders":[],
},
{
"date":"2014-10-08",
"orders":[],
},
]
próbuję przez kilka godzin teraz, i nie może uzyskać moja głowa wokół niego, aby zmusić go do pracy. Moja intuicja mówi, że ma to związek z obietnicami? Ale w tablicy "orders: []"
są prawdziwe obiekty Embera, więc powinno to działać, jak sądzę.
Mam nadzieję, że ktoś może wskazać mi właściwy kierunek.
Wielkie dzięki chłopaki!
Edycja: aby być w 100% przejrzystym: mój model zamówienia składa się wyłącznie z zamówień. Ten niestandardowy obiekt sam się tworzę. Dlatego myślę, że wiązanie danych się zepsuło.
Czy wypisałeś 'Ember.computed.sort'? Istnieje również standardowa właściwość 'arranContent', która jest używana jako wynik sortowania, jeśli szukasz tego typu rzeczy. – aceofspades
Witam, jestem trochę spóźniony, ale dziękuję za odpowiedź! Jednak nie widzę, jak to zadziała, ponieważ 'arranContent' jest również używany dla' sortProperties', którego już używam. Zobacz: http://emberjs.com/api/classes/Ember.ArrayController.html#property_arrangedContent Czy muszę napisać własną 'arranContent' z własną kompilacją sortowania? Jeśli podasz przykład w odpowiedzi, zaakceptuję go jako taki. – DelphiLynx
Po wielu dniach błądzenia z nim robię nagrodę. Nie mogę dostać się tam, gdzie chcę, ponieważ uporządkowane treści nie mają możliwości ustalenia daty przed oryginalnymi przedmiotami. – DelphiLynx