تغييرات مستقبلية في قائمة المواضيع - كيفية إعداد السمات والإضافات

عذرًا على إزعاجك في عطلة نهاية الأسبوع يا ديفيد، نعم، رأيت للتو واجهة برمجة التطبيقات، شكرًا لك

3 إعجابات

مرحباً، لقد حاولت استخدام محول القيم لـ “topic-list-columns” على هذا النحو:

export default {
    name: "assignment-topic-list-column-modifier",

    initialize(container) {
        const router = container.lookup("service:router");

        withPluginApi("1.39.0", (api) => {
            api.registerValueTransformer(
                "topic-list-columns",
                ({ value: columns }) => {
                    if (ASSIGN_LIST_ROUTES.includes(router.currentRouteName)) {
                        columns.add("posters-recent", {
                            header: AssignHeaderCell,
                            item: AssignCell,
                            after: "posters",
                        });
                    }
                    return columns;
                }
            );
        });
    },
};

الهدف هو إدراج عنصر رأس وعمود جديدين بعد عمود “posters”، ويعمل هذا بالنسبة للعنصر، لكن الرأس لا يزال في غير مكانه الصحيح، فقد تم وضعه بعد عمود “activity”.

هل هناك شيء مفقود في الكود الخاص بي؟ وهل هناك أي وثائق تشرح كيفية القيام بذلك بشكل صحيح؟

هناك دليل جديد بالفعل:

ومع ذلك، قد لا يكون مفيدًا جدًا في هذه الحالة.

@NateDhaliwal شكرا على المعلومات، سأتحقق منها.

أعتقد أن الكود يجب أن يبدو كالتالي:

columns.add(
  "posters-recent",
  { header: AssignHeaderCell, item: AssignCell }
  { after: "posters"}
});

وقد تحتاج إلى تحديد before:

{after: "posters", before: "replies"}
إعجاب واحد (1)

@Arkshine شكراً جزيلاً، الكود الخاص بك يعمل!!! رائع :+1:

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

لقد قمنا الآن بتمكين لافتة التحذير لهذه الإيقافات، لذلك سيتم إخطار مسؤولي المجتمع بأي سمات أو إضافات لا تزال بحاجة إلى تحديث.

لقد نشرنا أيضًا دليلًا مرجعيًا مع علامات إرشادية لجميع الطرق المختلفة التي يمكنك من خلالها تخصيص قائمة الموضوعات الجديدة:

لقد أضفت رابطًا إلى ذلك من OP.

6 إعجابات

ديفيد، لست متأكدًا مما إذا كنت تفضل هذا الموضوع أو الموضوع الآخر، ولكن إليك:

مكوني الجديد المتوافق (أعتقد) يفشل عندما يتم تعيين “تمكين قائمة مواضيع Glimmer” على “تلقائي”…

يشير إلى أن واجهة برمجة التطبيقات الجديدة لا يتم تنشيطها تلقائيًا… هل هناك شيء أحتاج إلى القيام به للإشارة إلى مكون السمة حتى يستخدم Discourse واجهة برمجة تطبيقات Glimmer الجديدة عند التعيين على تلقائي؟

3 إعجابات

لقد لاحظت التحذير هنا:

لكنه لا يزال لا يسبب أي مشاكل على الرغم من أن التاريخ الذي قدمته أعلاه قد مر وأنا على أحدث إصدار…؟

تأخرت الأمور قليلاً، لكننا نأمل في الانتهاء من إسقاط الكود القديم خلال الأسبوعين القادمين

إذًا، هل سيتسبب ذلك في تعطل السمات التي لم يتم تحديثها بالكامل بعد؟ هل يجب علينا تجنب التحديث؟ أم أن هناك أي شيء يمكننا القيام به ببساطة إذا قمنا بعمل نسخة من السمة؟

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

سيمنع تطبيق تخصيصاتهم على قائمة المواضيع، نعم.

لا أوصي بذلك. غالبًا ما تتضمن تحديثات Discourse الأساسية إصلاحات أمنية، وقد يكون مجتمعك عرضة للخطر إذا توقفت عن التحديث.

يبدو أنك فهمت الأمر في الموضوع الآخر :chefs_kiss:

إعجابَين (2)

تمت إزالة نظام قائمة الموضوعات القديم و نظام “raw handlebars” الآن من نواة Discourse. شكرًا لكل من ساعد في تحديث الإضافات والسمات لهذا التغيير! :rocket:

5 إعجابات

هذا رائع! تهانينا لفريق CDCK الذي عمل على هذا. :partying_face:

شكراً لك وللفريق أيضاً على تقبل طلبات الميزات بصدر رحب والتفكير العميق في تصميم واجهة برمجة التطبيقات الجديدة :heart_eyes:

كنت أخشى أن نفقد بعض القدرات. ولكن ما حدث بالفعل هو أننا حصلنا على المزيد مع سهولة العمل معها بشكل كبير في نفس الوقت! :rocket:

6 إعجابات

فيما يتعلق بالقوالب الأولية، هل أفهم بشكل صحيح أنه لم يعد من الممكن استخدام المكونات في القالب مع وظيفة الإكمال التلقائي (على سبيل المثال، الرموز التعبيرية)؟

this.textManipulation.autocomplete({
      template: renderEmojiAutocomplete,

يبدو أنه يمكنك فقط إرجاع HTML الآن.
أعتقد أنك قلت إنه سيتم إعادة العمل على الإكمال التلقائي في وقت ما، ولكن من غير المرجح أن يكون ذلك قريبًا.

هل ترى حلاً بديلاً هنا؟ (محاولة إصلاح Emoji Fluff TC)

3 إعجابات

للأسف، لم نقم بتضمين رسالة إيقاف مناسبة للاقتراح التلقائي، نعتذر! ولكن هناك مسار للمضي قدمًا - تحقق من: Autocomplete still using Raw Templates - #4 by david

إعجابَين (2)