context hook

پرسیده شده
فعالیت 1077 روز پیش
دیده شده 297 بار
0

با سلام 

آیا دلیل خاصی داشت که از دو Provider استفاده کردین ، یعنی باعث بهینه شدن عملکرد برنامه میشد؟ آیا اینکه هم dipatch و state رو در یک Provider پاس میدادیم باعث کاهش Perfomance برنامه میشد؟ مثل کد زیر :

export function AuthProvider({ children }) {

    const [state, dispatch] = useReducer(reducer, initState);

    return (
        <AuthContext.Provider value={{...state ,dispatch}}>
             { children }
        </AuthContext.Provider>
    )
}
فایل پیوست

حسین مولاپور
حسین مولاپور

27 اردیبهشت 00

2
حذف شده

سلام

اینکه داخل یک Provider باشه یا نه کاملا به شرایط داره و نمیشه یه قانون کلی براش داد و شایدم  بیشتر برگرده به سلیقه و سبک کدنویسی شما! انچنان شدید روی performance  اثر زیادی نداره

من شخصا  به سبک command و query به این دو تا نگاه میکنم. در واقع بهتر بگم دو تا حوزه مختلف از هم دیگه هستن از نگاه من و باعث خوانایی و نگهداری بهتر کد میشه

البته همنطوری که گفتم این مورد به هیچ عنوان قانون نیست و همیشه با توجه به شرایط واقعی پروژه باید تصمیم گیری کرد که کدوم سبک رو انتخاب بکنید! یک نکته دیگه ای هم که وجود داره معمولا dispatch ثابت و state تغییر میکن و با جدا سازی اونها کامپوننت هایی که صرفا با dispatch سر و کار دارند با تغییرات state دوباره render براشون اتفاق نمی افته

فایل پیوست

مجتبی سوری

توسط

مجتبی سوری

27 اردیبهشت 00