نسخ محتوى بأيقونة النسخ

مرحباً، بدلاً من طباعة جزء من البيانات التي يوفرها لي المكون الإضافي من خلال نموذج، أريد تمكين المستخدمين من نسخ هذا المحتوى عندما يرغبون في ذلك عن طريق النقر على أيقونة “نسخ”.

لاحظت أن Discourse قد قدمت هذه الميزة لكتل التعليمات البرمجية، لكنها تعمل فقط داخل هذه الكتل. كيف يمكنني استخدامها في مكان آخر كما أرغب؟

شكرا لك،

ربما هذا Theme component هو ما تبحث عنه 📄 Copy Post Component
يمكنك نسخ منشور كامل به

5 إعجابات

أريد استخدامه لبيانات من مكون “Custom Wizard” الإضافي، مما يعني أنني أريد تمكين نسخ عبارة معينة. أعتقد أن مكون السمة لا يوفر هذا. ولكن، هل يمكنني تحقيق ذلك عن طريق التخصيص؟

أنت على حق، المكون ينسخ محتوى المنشور بالكامل. يبدو هذا قابلاً للتخصيص بالتأكيد. هل يمكنك مشاركة مثال مرئي لما تتوقعه؟ لم أستخدم هذه الإضافة من قبل، لذا لست متأكدًا في أي خطوة أو سياق تريد هذا التخصيص.

إعجابَين (2)

عند إنشاء صفحة باستخدام المكون الإضافي للمساعدين المخصصين، أريد نسخ مخرجات المتغيرات التي يوفرها المكون الإضافي. لذا يمكننا التفكير في الأمر كمنطقة مختارة عشوائيًا في محتوى الرسالة. يمكنني تعيين محدد CSS مخصص للمحتوى المراد نسخه.

https://github.com/keegangeorge/discourse-copy-post/blob/main/javascripts/discourse/widgets/copy-widget.js

  click(attrs) {
    const copyButton = attrs.currentTarget.activeElement;
    const rawCooked = this.attrs.attrs.cooked;
    const cookedText = this.attrs.attrs.cooked.replace(/<p>(.*)<\/p>/g, "$1\n");
    let postContents = cookedText.replace(/(<([^>]+)>)/gi, "");

    if (settings.copy_raw_html) {
      postContents = rawCooked;
    }

const rawCooked = this.attrs.attrs.cooked;

المحدد هنا. أريد استهداف علامة الفقرة الأخيرة أو علامة الفقرة قبل الأخيرة في div المطبوخ بدلاً من الكل. أريد استهدافها بشكل منفصل إن أمكن ووضع أيقونات النسخ بجوار الفقرات مباشرة.