타임라인 타임스탬프가 업데이트되지 않음

기존 구현을 자세히 살펴보니, 이것이 이전에도 문제가 되었을지 궁금합니다…

      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, 혹시 아이디어가 있으신가요?

2개의 좋아요