Non ho potuto fare a meno di notare:
Dopo un aggiornamento è stato corretto. Ma sarebbe più logico se corrispondesse al timestamp del post, che viene aggiornato senza refresh.
Non ho potuto fare a meno di notare:
Dopo un aggiornamento è stato corretto. Ma sarebbe più logico se corrispondesse al timestamp del post, che viene aggiornato senza refresh.
Interessante, potrebbe essere correlato alla nostra mossa di scintillio @isaac
Scavando nell’implementazione precedente, mi chiedo se questo fosse un problema anche in passato…
const bottomAge = relativeAge(
new Date(topic.last_posted_at || topic.created_at),
{
addAgo: true,
defaultFormat: timelineDate,
}
);
const scroller = [
h(
"div.timeline-date-wrapper",
this.attach("link", {
className: "now-date",
rawLabel: bottomAge,
action: "jumpBottom",
})
),
];
Questo veniva chiamato nella funzione html() del widget, per la quale non sembra che abbiamo ganci per aggiornarla mentre il tempo passa.
Ovviamente la funzionalità desiderata è aggiornare bottomAge con la data più recente alla creazione del post, e poi continuare ad aggiornarla automaticamente con il passare del tempo. Quello che possiamo fare al momento è aggiungere una funzione a
e aggiornare bottomAge allo scroll, ma in pratica sembra un po’ strano. Un altro problema con questa idea è che è difficile far coincidere il momento dell’aggiornamento della data dell’ultimo post con l’aggiornamento della data bottomAge nella timeline del topic. Il created_at relativo di un post è in ritardo di circa 10 secondi… creando una discrepanza tra
quando si scorre.
Idealmente tracciamo la data relativa created_at del post e la inseriamo nella timeline, ma non so se al momento sia possibile.
@david, hai qualche idea?
Sì, sarebbe l’ideale ![]()
Se utilizziamo la struttura HTML corretta, l’aggiornamento automatico nel tempo può essere gestito automaticamente dal nostro helper per le date relative.
Per gestire le modifiche al valore di topic.last_posted_at, dovremmo essere in grado di fare affidamento sulla reattività di Glimmer, piuttosto che fare cose allo scroll. Ad esempio:
get bottomAge(){
return this.args.topic.get("last_posted_at") || this.args.topic.get("created_at");
}
E poi nell’hbs possiamo usare il nostro helper per le date relative per renderizzarlo nella struttura corretta per l’aggiornamento automatico
{{age-with-tooltip this.bottomAge}}
Potrebbe essere necessario apportare alcuni miglioramenti all’helper in modo che possa supportare i parametri ‘addAgo’ e ‘defaultFormat’?
Questo verrà corretto tramite