قد يكون هذا مجرد هراء عقلي، ولكنه قد يكون مفيدًا نظرًا لأنه أصبح معيارًا لتجربة المستخدم/واجهة المستخدم في العديد من التطبيقات، مثل Notion.
ماذا عن إضافة ميزة أمر / مع قائمة سياق عندما يكون المستخدم في سطر جديد/فارغ لتقديم إنشاء عناصر محددة مثل الصور والروابط وملفات GIF والاستطلاعات وما إلى ذلك؟
سيكون من الرائع إذا تمكنت المكونات الإضافية ومكونات السمات من “الوصول” إلى ذلك.
هل سيكون هذا ممكنًا عبر TC/plugin، أو PR/تغيير مباشر في قاعدة التعليمات البرمجية؟ لأنه بالنظر إلى هذا، لا يبدو أنه يمكن تعديله بسهولة باستخدام TC/plugin نظرًا لأنه يحتاج أيضًا إلى ملف lib/؟
محرر التنسيق الغني قابل للتخصيص بدرجة عالية عبر الإضافات المسجلة، والتي تتبع نوع RichEditorExtension. كل عقدة/علامة/ملحق ProseMirror مخصصة/إلخ تمر عبر استدعاء registerRichEditorExtension.
إذا كان سيتم إنشاء ميزة أمر مائل للمحرر الغني فقط، فهذه ستكون الطريقة، على الرغم من أنه في رأيي لدينا بالفعل تطبيق الإكمال التلقائي الخاص بنا وهو مشابه جدًا لما نريده لأمر مائل، وحقيقة أنه سيكون من الممكن أيضًا دعم وضع Markdown بسهولة أمر مثير للاهتمام للغاية.
الإكمالات التلقائية، كونها ميزة تهدف إلى العمل على كلا المحررين، وليس فقط المحرر الغني، تقع فوق التخصيصات الخاصة بالمحرر الغني. تعمل الرموز التعبيرية والإشارات والعلامات (#) بنفس الطريقة في كلا وضعي المحرر.
يتم تطبيقها في setupEditor ويتم تدميرها عند تدمير مثيل المحرر هذا أيضًا (على سبيل المثال، عند التبديل بين الأوضاع):
نعم، من الممكن بناء هذا عبر مكون سمة أو مكون إضافي (على الرغم من أن المرور عبر setupEditor/مدمر يمكن أن يكون غير مستقر حاليًا)، ولكن هذا مجال نود أن نسمح فيه بمزيد من التخصيص - يجب أن تكون مكونات السمات أو المكونات الإضافية الجديدة قادرة على إضافة المزيد من الخيارات للأمر المائل، مع قواعد التصفية الخاصة بها - لذا فإن واجهة برمجة تطبيقات المكونات الإضافية المقدمة أساسية.