الطابع الزمني للمخطط الزمني لا يتم تحديثه

لم يسعني إلا أن ألاحظ:

بعد التحديث، تم تحديثه. ولكن يجب أن يكون أكثر منطقية إذا تطابق مع الطابع الزمني للمنشور، والذي يتم تحديثه بدون تحديث.

إعجابَين (2)

شيء مثير للاهتمام، قد يكون متعلقًا بحركتنا اللامعة يا @isaac

3 إعجابات

بالتعمق في التنفيذ القديم، أتساءل عما إذا كانت هذه مشكلة في السابق أيضًا…

      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)

نعم، هذا سيكون مثالياً :+1:

إذا استخدمنا بنية 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’؟

إعجاب واحد (1)

سيتم إصلاح هذا عبر

5 إعجابات