استفاده از Controller به عنوان Router در Nodejs

3 هفته پیش
توسط مهدی پاکروان آپدیت شد
مهدی پاکروان ( 18310 تجربه )
3 هفته پیش
تخصص : MERN STACK DEVELOPER

سلام ,
دوستان من یک پکیج Nodejs دارم میسازم که دوست دارم در موردش باهاتون صحبت کنم و از نظراتون استفاده کنم :)
ماه پیش با یک تیم برنامه نویس PHP داشتیم روی یک پروژه کار میکردیم که من برنامه نویس Nodejs اون تیم بودم .
اکثر بچه های PHP میگفتن که دلیل این که نمیان سمت Nodejs و کلا Javascript اینه که کد هاش خیلی به هم ریختس و کار کردن با Nodejs پدر آدمو در میاره ! هی باید Route ساخت و وصلش کرد به Controller و خیلی رو مخه !
من یه ایده ی جالبی به سرم زد که گفتم باهاتون در میون بزارم شاید جالب باشه براتون .
ایده ی من اینه که ما از Controller ها به عنوان Router استفاده کنیم که از این به بعد هر کدوم از Controller های ما به طور اتوماتیک بعد از ریست شدن به عنوان Route هم استفاده بشن .
حالا من این رو فعلا با Hapi و Express پیاده سازی کردم و خاستم باهاتون در اشتراک بزارم ببینم نظر شما ها چیه .
به نظر شما این کار رو توسعه بدیم به طوری که بتونن با npm نصب کنن و از Controller هاشون به عنوان Route استفاده کنن ؟

const controllerDir = path.join(__dirname.replace('bin','') , 'controller')
fs.readdir(controllerDir , (err , dir) => { 
        dir.forEach(dirss => { 
            fs.readdir(path.join(controllerDir , dirss) , (err , jsFile) => {
                jsFile.forEach(cont => {
                    let thispath = process.env.API_VERSION + cont.replace('.js','')
                    console.log(thispath)
                    server.route({
                        method : 'POST' , 
                        path : process.env.API_VERSION + cont.replace('.js',''),
                        handler : require(`controller/${dirss}/${cont}`)
                    })
                })
        })
    })
Mahdi Pardat ( 11875 تجربه )
3 هفته پیش
تخصص : برنامه نویس

استفاده از کنترلر به منطق برنامه نویس برمیگرده و اینکه اینو با اون یکی کنیم یا نکنیم خب چه کاریه طرف میتونه منطق برنامه هاشو تو فایل روت بنویسه و اون فایل رو ایمپورت کنه فریمورک اکسپرس دست ادم رو باز گذاشته تا از هر منطقی که دوست داری کد بزنی و کسی که بخاطر ساخت یک کنترلر داره از زبان دگ استفاده میکنه بزار همونو استفاده کنه دگ

مهدی پاکروان ( 18310 تجربه )
3 هفته پیش
تخصص : MERN STACK DEVELOPER

اینم حرفیه , اوکی مرسی

برای ارسال پاسخ باید وارد سایت شوید