Не могу не заметить:
После обновления оно обновляется. Но было бы логичнее, если бы оно соответствовало временной метке поста, которая обновляется без перезагрузки.
Не могу не заметить:
После обновления оно обновляется. Но было бы логичнее, если бы оно соответствовало временной метке поста, которая обновляется без перезагрузки.
Интересный момент, может быть связано с нашим движением glimmer @isaac
Изучая старую реализацию, я задаюсь вопросом, была ли это проблема и раньше…
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",
})
),
];
Это вызывалось в функции html() виджета, и похоже, что у нас нет никаких механизмов для обновления этого значения по мере прохождения времени.
Очевидно, что желаемая функциональность — обновлять bottomAge с новой датой при создании поста, а затем продолжать обновлять его автоматически по мере прохождения времени. То, что мы можем сделать прямо сейчас, — это добавить функцию в
и обновлять bottomAge при прокрутке, но на практике это кажется немного странным. Еще одна проблема с этой идеей заключается в том, что трудно синхронизировать время обновления даты на последнем посте с обновлением даты bottomAge на временной шкале темы. Относительное поле created_at в посте отстает примерно на 10 секунд… создавая несоответствие между
когда вы прокручиваете.
В идеале мы должны отслеживать относительную дату создания поста created_at и просто вставлять её в временную шкалу, но я не знаю, возможно ли это в данный момент.
@david, есть ли у тебя какие-либо идеи?
Да, это было бы идеально ![]()
Если использовать правильную HTML-структуру, автоматическое обновление со временем может быть обрабатано автоматически нашим хелпером относительных дат.
Для обработки изменений значения topic.last_posted_at мы должны иметь возможность полагаться на реактивность Glimmer, а не выполнять действия при прокрутке. Например:
get bottomAge(){
return this.args.topic.get("last_posted_at") || this.args.topic.get("created_at");
}
А затем в HBS мы можем использовать наш хелпер относительного возраста, чтобы отобразить его в правильной структуре для автоматического обновления:
{{age-with-tooltip this.bottomAge}}
Возможно, потребуется внести некоторые улучшения в хелпер, чтобы он поддерживал параметры ‘addAgo’ и ‘defaultFormat’?
Это будет исправлено через