حتى الآن ، لدينا هذه النماذج الأولية التقنية:
1- https://wordpress.github.io/gutenberg/tinymce-per-block/
2- https://wordpress.github.io/gutenberg/tinymce-single/ (Single TinyMCE، unontrolled، no grammar، HTML parsing)
tinymce.getContent
(لا تتردد في إضافة أي نموذج أولي تقني آخر هنا)
أنا أقوم بإنشاء هذه المشكلة حتى نتمكن من مقارنة إيجابيات / سلبيات كل نهج لمساعدتنا في تحديد النهج الذي نختار تنفيذه.
إليكم مشاعري حول هذين النموذجين:
الايجابيات:
سلبيات:
الايجابيات:
سلبيات
بناءً على هذا النموذج الأولي التجريبي https://github.com/WordPress/gutenberg/pull/113 حاولت العمل على نهج مختلط حيث نستخدم TinyMCE كغلاف ولكن نعيد عرض محتواه بناءً على تغييرات الحالة. بعد بعض الاستكشاف ، يبدو هذا النهج وكأنه محاولة إعادة إنشاء DraftJS أو ProseMirror. ولا أعتقد أنها الطريقة الصحيحة لاستخدام TinyMCE.
شكرا لإنشاء هذه التذكرة.
كما نقارن ، يجب أن نفكر أيضًا في # 3 ، حيث يبدو أن ذلك يعتمد على النهج الذي نختاره.
أعتقد أن Prototype 2 هو الطريق الذي يجب اتباعه ، على الرغم من أنه قد يكون أكثر صعوبة لأنه سيتضمن الكثير من أعمال TinyMCE ، فقد يكون في النهاية أفضل نهج للمضي قدمًا في الوقت الحالي.
من الصعب إعادة استخدام الكتل خارج المحرر؟
أعتقد أن هذا لن يكون خداعًا لـ Prototype 2 ، طالما أن واجهة برمجة التطبيقات لتحديد أنواع الكتل وأنواع التحكم توفر بيانات كافية لشيء آخر غير TinyMCE لاستخدامها. أعتقد أنه يجب علينا تطوير واجهة برمجة تطبيقات تحدد نوع الكتلة / نوع التحكم والتي سيتم استخدامها لتغذية مثيل TinyMCE مخصص للغاية. يمكن أيضًا استخدام البيانات من نوع الكتلة / نوع التحكم لتغذية شيء آخر محتمل في المستقبل.
بقدر ما هو غير مستساغ على الأرجح ، يعكس Prototype 2 معظم كيفية عمل WordPress بالفعل ويقوم TinyMCE بالكثير ، مما يجعله مسارًا معقولاً للغاية للمضي قدمًا.
التعليق الأكثر فائدة
إليكم مشاعري حول هذين النموذجين:
النموذج الأولي 1:
الايجابيات:
سلبيات:
النموذج الأولي 2:
الايجابيات:
سلبيات
بناءً على هذا النموذج الأولي التجريبي https://github.com/WordPress/gutenberg/pull/113 حاولت العمل على نهج مختلط حيث نستخدم TinyMCE كغلاف ولكن نعيد عرض محتواه بناءً على تغييرات الحالة. بعد بعض الاستكشاف ، يبدو هذا النهج وكأنه محاولة إعادة إنشاء DraftJS أو ProseMirror. ولا أعتقد أنها الطريقة الصحيحة لاستخدام TinyMCE.