سؤال

ما زلت ألف رأسي حول العقدة، لكن لدي سؤال بسيط للغاية. أرى الكثير من أمثلة العقدة حيث يعلن الناس عن طرقهم وكل منطقهم في ملف appl.js واحد (أو تقسيمهم في بعض الأحيان إلى فرعية فرعية).

سؤالي هو أساسا: هل من الأفضل الحفاظ على جميع تصريحات مسارك في التطبيق أو bootstrap طريق عام خرائط بنية الملف الخاصة بك. قد يبدو هذا سؤالا بدائيا، لكن هدفي هو فهم ما هو الأكثر كفاءة داخل العقدة.

أقوم حاليا ببناء معالج API مع تعميم ولكن لدي تطبيق آخر يستخدم Express (لذلك من المرجح أن يجيب هذا السؤال على كلا السؤالين).

في طريقي، يمكنني إما أن أعلن أحضار مسار واحد مثل ذلك: giveacodicetagpre.

هذا يقبل أساسا جميع المكالمات من API ويستهدف وحدة تحكم API المناسبة. بدلا من ذلك، يمكنني أن أعلن كل مسار بشكل فردي أو ربما حتى كتابة حلقة تمر عبر كل من وحدات التحكم الخاصة بي وتعلن عنها في INIT. لذلك: giveacodicetagpre.

packages.controllers يجري مجموعة من جميع وحدات التحكم الممكنة. ملاحظة الرمز أعلاه غير دقيق، لدي بنية مجلد HMVC حتى يكون الرمز أكثر تعقيدا قليلا من ما سبق. ولكن تحصل على هذه النقطة.

أنا أتساءل ما هي عواقب إما وأي إذا كان يهم حقا على الإطلاق؟

شكرا!

هل كانت مفيدة؟

المحلول

دفع ملف Apploding App.js بضعة زوجين لإنشاء تطبيق مرجعي صغير لتدوين هيكل App Express القياسي.إنه ليس علما صاروخيا، بل مجموعة من الاتفاقيات التي تجعل الأمور أكثر تنظيما.

يمكنك العثور عليه هنا: https://github.com/eaappfoundry/tableau

نحب اقتراحات / طلبات سحب إذا كان هناك شيء أخطأ أو مفقود.

نصائح أخرى

لن أوصي بتطبيق واحد على الإطلاق.سوف ينتهي بك المطاف مع ملف خط 5000+ وهو كابوس للحفاظ عليه.

أكبر مشكلة أراها مع مقتطفك هو أنه على الرغم من أن تتطلب () يتم تخزين مؤقتا () تخزين مؤقتا، فسيؤدي إلى إجراء طلب IO متزامن.انها مجرد عادة سيئة للدخول.

على غرار ما يوصي دون أن يكون أفضل حظا في تقسيم الطرق في الوحدات النمطية التي تصدر وظيفة واحدة تقبل مثيل التطبيق.يمكنك التفكير في الأمر ك "تزيين" مثيل التطبيق: giveacodicetagpre.

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

كتبت مكتبة تستخدمها لتحديد مساراتي بشكل تعريفي ومع الحد الأدنى من التكرار الذي قد تكون مهتما به. إنها مستوحاة من القضبان الحيلة التوجيهية وهي مرنة للغاية - والفكرة هي بناء تجزئة الطرق والتحسس؛هناك أيضا منشآت لتحديد مجموعات من الطرق والطبيب والمتغيرات.

https://github.com/cheesun/xpress-declarative-Routing / ص>

على الرغم من أنه لا يقوم تلقائيا بإنشاء المسارات بناء على بنية دليلك، فما أعتقد أنه سيكون ميزة رائعة وأرحب بك إضافته إلى المكتبة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top