مدت :

۲ ساعت و ۲۰ دقیقه

قیمت : ۹۹,۰۰۰ تومان
LinkedIn
Twitter
Facebook
Telegram

درباره مدرس 

اطلاعات دوره

توضیحات

به فصل سوم آموزش ساخت فروشگاه جنگو و ری اکت خوش آمدید. یک آموزش برنامه نویسی فول استک که فصل به فصل یک بار بک اند و یک بار فرانت اند را کدزنی می‌کنیم. و این فصل دوباره نوبت به فرانت اند رسیده! در هر اپ جاوا اسکریپتی می‌توان از ریداکس برای مدیریت وضعیت استفاده کرد. در این فصل از ساخت فروشگاه آنلاین با جنگو و ری اکت به آموزش ریداکس می‌پردازیم و آن را به پروژه اضافه می‌کنیم. این فصل نه تنها یک آموزش ریداکس در ری اکت برای بهبود فروشگاهمان است. بلکه برای هر توسعه دهنده جاوااسکریپت به ویژه برنامه نویسان React می‌تواند مفید باشد.

 

آموزش-ساخت-فروشگاه-فول-استک-با-جنگو-و-ری-اکت-ریکت-هم-رویش

این آموزش بخشی از بسته جامع ساخت فروشگاه با جنگو و ری اکت (+) است.

شما می‌توانید بسته جامع با با مجموع قیمت کمتر از این لینک (+) تهیه کنید یا این مجموعه را فصل به فصل دریافت و تماشا کنید.

 

فهرست فصل‌‌به‌فصل آموزش ساخت فروشگاه جنگو/ریکت

ریداکس یا Redux چیست ؟

ریداکس یک الگو (Pattern) برای حل مشکل مدیریت وضعیت اپلیکیشن‌های پیچیده یا بزرگ است. پیشنهادکنندگان ریداکس آن را به صورت کتابخانه Redux (+) نیز کدنویسی و متن باز ارائه کرده‌اند تا دیگران بتوانند این الگو را در پروژه‌های خود پیاده کنند.

 

ایده اصلی ریداکس چیست؟

ایده ریداکس این است که یک مخزن (Store) مرکزی برای نگهداری متغیرهای سراسری اپلیکیشن (در مجموع State) ایجاد شود. سپس آبجکت‌هایی به نام اکشن Action داشته باشیم که رویدادهای تغییردهنده متغیرها را توصیف کنیم. هر گاه در جریان برنامه نیاز داریم که یک متغیر تغییر کند کافی است که اکشن متناسب با آن را با متد dispatch از شی Store پرتاب کنیم. سپس یک تابع هندلر برای این اکشن نیاز داریم که آن را در ریداکس با نام ریدوسر (Reducer) می‌شناسیم. در تابع تغیین می‌کنیم که به ازار هر اکشن چه اتفاقی برای یک متغیر به خصوص بیفتد.

به این ترتیب کل متغیرهای سراسری در یک انبار مرکزی نگهداری و به روز می‌شوند. پس مدیریت آن‌ها و دیباگ چنین پروژه‌ای و آگاهی لحظه به لحظه از مقدار هر کدام ساده می‌شود. هر کامپوننت که نیاز به متغیری داشته باشد، می‌تواند در هر لحه از استور آن را بخواند. اگر هم تغییری در آن داد بی‌درنگ در استور آن را به روز کند.

در این آموزش بیشتر با این مفهوم و نحوه کدنویسی آن آشنا خواهیم شد.

 

نگاهی به فصل سوم آموزش فروشگاه جنگو و ری اکت 

این فصل شامل ۱۰ درس است (ریز محتوای فیلم‌ها را در انتهای توضیحات ببینید). در درس ۱ به این سوال پاسخ می‌دهیم که ریداکس چیست و چگونه کار می‌کند. همچنین کدنویسی ریداکس در یک اپ جاوا اسکریپتی ساده را خواهیم آموخت. مستندات ریداکس را برای خودآموزی بررسی خواهیم کرد.

در درس ۲ به نصب ابزارهای لازم شامل redux و react-redux و redux-thunk می‌پردازیم. همچنین افزونه Redux DevTools را برای بررسی State در مرورگر نصب می‌کنیم.

در درس‌های ۳ تا ۶ به کدنویسی استاندارد ریداکس می‌پردازیم. ایجاد استور با crateStore و ترکیب ریدوسرها با combineReducer را خواهیم آموخت. کدنویسی تابع Reducer و تابع سازنده اکشن (Action Creator) را خواهیم آموخت. از آنجا که اکشن ما یک اکشن خاص (درخواست از سرور) است، نیاز به یک میان افزار به نام redux thunk داریم. این میان افزار یا Middleware پس از اجرای اکشن نتیجه آن را به صورت یک اکشن استاندارد به ریدوسر می‌فرستد.

در درس‌های ۷ و ۸ از متغیرهای سراسری State برای نمایش یک Spinner و یک Alert در هنگام فراخوانی داده‌ها و یا خطا در دریافت داده‌ها استفاده می‌کنیم.

درس ۹ به تمرین اختصاص دارد. چرخه اجرا شده در درس‌های ۲ تا ۸ را یک مرتبه از نو برای صفحه نمایش محصول پیاده‌سازی می‌کنیم.

درس ۱۰ نیز به جمع‌بندی اختصاص دارد. سورس‌کدهای پروژه نیز در اختبار فراگیران است. لینک کدها در فصل اول ارائه گردید.

 

آموزه‌های اصلی
  • آموزش ریداکس به زبان ساده
  • آموزش ریداکس در ری اکت به صورت پروژه محور
  • آموزش ریداکس تانک (redux thunk)
  • کار با هوک‌ها در react redux
  • کار با کامپوننت‌ها در react bootstrap

 

این آموزش بی‌نظیر است زیرا: 
  • یک آموزش برنامه نویسی فول استک محسوب می‌شود.
  • علاوه بر کدنویسی شما مفاهیم را عمیق درک خواهید کرد.
  • می‌توانید این پروژه را در پایان راه به عنوان یک کار حرفه‌ای عرضه کنید.
  • جنگو به دلیل وجود پایتون انتخاب خوبی برای بک اند است (قلب اینستاگرام با جنگو است).
  • ری اکت از بهترین کتابخانه‌ها برای فرانت اند است.
  • ریداکس یک انتخاب خوب برای مدیریت وضعیت در پروژه‌های بزرگ است.

 

پیشنیاز

 

کلیدواژگان

برنامه نویسی فول استک | آموزش ریداکس پروژه محور  | فروشگاه جنگو | ری اکت | ساخت فروشگاه آنلاین با react | فول استک دولوپر |  فروشگاه فول استک | ساخت فروشگاه اینترنتی با جنگو | آموزش فروشگاه با dajngo | | آموزش full stack | طراحی سایت فروشگاهی با پایتون – Redux به زبان ساده | جنگو پایتون | ری اکت پروژه محور | آموزش برنامه نویسی | آموزش فول استک پروژه محور

محتوای فیلم‌ها

محتوای فیلم‌ها

 

درس ۱: ریداکس چیست؟ ــ مفهوم و نحوه پیاده سازی ریداکس

  • پیشنیاز آموزش ریداکس
  • ریداکس چیست؟ تعریف استاندارد Redux
  • ریداکس یک الگو است یا کتابخانه؟
  • چرا و کجا از Redux استفاده کنیم؟
  • آموزش کدنویسی اکشین و استور و ریدوسر در ریداکس
  • ریداکس برای هر اپ جاوا اسکریپتی
  • امکانات Redux ToolKit
  • پکیچ react-redux
  • مفهوم middleware در ریداکس
  • تابع applyMiddleware و تابع combineReducer
  • فرق createStore و configureStore
  • نمونه پروژه ریداکس و پیاده‌سازی مدرن ریداکس
  • روش خودآموزی برای ری اکت و دیگر فریمورک‌ها
  • ریداکس در چه پروژه‌هایی مفید است؟
  • مفهوم predictable و debuggable در ریداکس چیست ؟

 

درس ۲: نصب ریداکس و وابستگی‌ها

  • نصب redux devtools برای Chrome و Firefox و Edge
  • نصب redux برای مدیریت استیت
  • نصب react-redux برای بایندینگ ریداکس به ری اکت
  • نصب redux-thunk برای مدیریت state در درخواست‌های Async
  • نصب redux-devtools-extension برای اتصال store ریداکس به مرورگر

 

درس ۳: ایجاد Store توسط ریداکس

  • ایجاد فایل store برای نوشتن کدهای ایجاد استور به صورت مستقل
  • تابع createStore برای ساخت store
  • تابع combineReducers برای ترکیب reducer های مختلف اپ
  • تابع applyMiddleware برای افزودن میدلورهایی مثل thunk به redux
  • فراخوانی ماژول thunk از redux-thunk
  • نحوه ساخت store با composeWithDevTools و کار آن
  • مفهوم عملگر Spread در جاوا اسکریپت و تایپ اسکریپت
  • مفهوم عبارت export default در JavaScript
  • مفهوم Provider در react-redux و پارامتر store
  • بررسی استور ساخته شده با افزونه Redux DevTools

 

درس ۴: ایجاد ریدوسر برای فهرست محصولات

  • مفهوم ریدوسر reducer چیست؟
  • ورودی action و state در تابع ریدوسر
  • ایجاد ماژول productReducers
  • افزودن ریدوسر به تابع combineReducers
  • بررسی چرخه ارتباط Store و Reducer

 

درس ۵: ایجاد اکشن برای فهرست محصولات

  • مفهوم اکشن یا action در redux
  • ارتباط ریدوسر و اکشن
  • ایجاد ماژولی برای نگهداری ثابت‌ها
  • ایجاد اکشن دریافت فهرست محصولات
  • مفهوم dispatch در جاوا اسکریپت
  • تخصیص type و payload به action
  • نقش thunk در امکان تعریف اکشن async

 

درس ۶: فراخوانی اکشن با dispatch

  • معرفی هوک useDispatch در react-redux
  • معرفی هوک useSelector در react-redux
  • دیستراکت state با useseelctor
  • پر کردن فهرست محصولات با فراخوانی اکشن
  • بررسی پروژه و اطمینان از درستی کار

 

درس ۷: نمایش Spinner در هنگام فراخوانی سرور

  • استفاده از فیلدهای state به صورت خام
  • معرفی کامپوننت Spinner در react-bootstrap
  • معنی sr-only در بوت استرپ و css
  • معنی display در css و مقدار block
  • معنی margin auto در css

 

درس ۸: نمایش Alert در هنگام دریافت خطای سرور

  • معرفی کامپوننت Alert در react-bootstrap
  • مفهوم variant در Alert
  • امکان درج لینک با Alert.Link
  • امکان درج استایل در Alert
  • ویژگی‌های dismissible و show در Alert
  • کامپوننت Message به عنوان wrapper برای Alert
  • نمایش پیام خطا با پاس دادن error به Message

 

درس ۹: تمرین ریداکس با پیاده‌سازی صفحه محصول

  • ایجاد ثابت‌ها در constants
  • ایجاد ریدوسر جزئیات محصول
  • ایجاد اکشن فراخوانی محصول از سرور
  • ثبت نام ریدوسر در استور
  • اجرای اکشن با دیسپچ کردن اکشن
  • استفاده از هوک useDispatch برای اجرای اکشن
  • استفاده از هوک useSeletor برای دسترسی به استیت
  • دیستراکت جزئیات محصول از state
  • نمایش اسپینر لودینگ و الرت خطا مشابه صفحه خانه
  • اجرا و بررسی diff در redux devtools extension

 

درس ۱۰: جمع بندی

  • مرور دستاوردهای این فصل
  • مراحلی که پیش رو داریم
نظرات (13)

13 دیدگاه برای آموزش فروشگاه آنلاین با جنگو و ری اکت — فصل ۳: ریداکس

  1. sali (خریدار محصول)

    سلام وقت بخیر
    پکیج redux-devtools-extension
    مشکل داره و نصب نمیشه
    بنابراین composedevtools در store کار نمیکنه و اپ بالا نمیاد

    ERROR in ./src/store.js 5:0-63
    Module not found: Error: Can’t resolve ‘redux-devtools-extension’ in ‘C:\Users

    ممنون میشم راهنمایی فرمایید

    • مصطفی آصفی

      سلام وقت بخیر. خطای نصب رو البته گزارش نکردین ولی در کل چون دپریکیت شده می تونید با دستور پایین به صورت اجباری دستور نصبش رو به npm بدین (چون کدها اینجا راست چین میشن نظر رو کپی و داخل یه ادیتور مثل وی اس کد یا نوت پد پلاس پلاس پیست کنید تا کدهایی که نوشتم رو بتونید به خوبی بخونید و استفاده کنید):

      دستور نصب اجباری:
      npm install redux-devtools-extension –force

      یا از این دستور استفاده کنید:
      npm install redux-devtools-extension –legacy-peer-deps

      نتیجه رو لطفا گزارش کنید.

  2. ehsan eslami (خریدار محصول)

    سلام من موقع نصب redux-devtools-extension با ارور مواجه میشم
    npm ERR! code ERESOLVE
    npm ERR! ERESOLVE unable to resolve dependency tree
    npm ERR!
    npm ERR! While resolving: frontend@0.1.0
    npm ERR! Found: redux@5.0.1
    npm ERR! node_modules/redux
    npm ERR! redux@”^5.0.1″ from the root project
    npm ERR!
    npm ERR! Could not resolve dependency:
    npm ERR! peer redux@”^3.1.0 || ^4.0.0″ from redux-devtools-extension@2.13.9
    npm ERR! node_modules/redux-devtools-extension
    npm ERR! redux-devtools-extension@”*” from the root project
    npm ERR!
    npm ERR! Fix the upstream dependency conflict, or retry
    npm ERR! this command with –force or –legacy-peer-deps
    npm ERR!
    npm ERR!
    npm ERR! For a full report see:
    npm ERR! C:\Users\E2\AppData\Local\npm-cache\_logs\2024-03-21T15_01_50_598Z-eresolve-report.txt

    npm ERR! A complete log of this run can be found in: C:\Users\E2\AppData\Local\npm-cache\_logs\2024-03-21T15_01_50_598Z-debug-0.log
    PS C:\Users\E2\Desktop\react-jango-eshop\frontend> npm install redux-devtools-extension
    npm ERR! code ERESOLVE
    npm ERR! ERESOLVE unable to resolve dependency tree
    npm ERR!
    npm ERR! While resolving: frontend@0.1.0
    npm ERR! Found: redux@5.0.1
    npm ERR! node_modules/redux
    npm ERR! redux@”^5.0.1″ from the root project
    npm ERR!
    npm ERR! Could not resolve dependency:
    npm ERR! peer redux@”^3.1.0 || ^4.0.0″ from redux-devtools-extension@2.13.9
    npm ERR! node_modules/redux-devtools-extension
    npm ERR! redux-devtools-extension@”*” from the root project
    npm ERR!
    npm ERR! Fix the upstream dependency conflict, or retry
    npm ERR! this command with –force or –legacy-peer-deps
    npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
    npm ERR!
    npm ERR!
    npm ERR! For a full report see:
    np

  3. mehdi mahdavi (خریدار محصول)

    سلام خدا قوت
    درس نهم این فصل برای من مشکل زیر را نشان میده برای مشاهده صفحه جزیات محصول ممنون میشم راهنمایی بفرمایید
    ERROR
    Cannot read properties of undefined (reading ‘params’)
    TypeError: Cannot read properties of undefined (reading ‘params’)
    at http://localhost:3000/static/js/bundle.js:1468:97
    at commitHookEffectListMount (http://localhost:3000/static/js/bundle.js:39282:30)
    at commitPassiveMountOnFiber (http://localhost:3000/static/js/bundle.js:40775:17)
    at commitPassiveMountEffects_complete (http://localhost:3000/static/js/bundle.js:40747:13)
    at commitPassiveMountEffects_begin (http://localhost:3000/static/js/bundle.js:40737:11)
    at commitPassiveMountEffects (http://localhost:3000/static/js/bundle.js:40727:7)
    at flushPassiveEffectsImpl (http://localhost:3000/static/js/bundle.js:42612:7)
    at flushPassiveEffects (http://localhost:3000/static/js/bundle.js:42564:18)
    at commitRootImpl (http://localhost:3000/static/js/bundle.js:42523:9)
    at commitRoot (http://localhost:3000/static/js/bundle.js:42306:9)

    • مصطفی آصفی

      سلام وقت بخیر. لطفا همون طور که تو توضیحات فصل ۱ درج کردم react-router-dom نسخه ۵ رو نصب کنید. شما احتمالا نسخه ۶ استفاده می کنید. کامپوننت Route تو این نسخه تفاوت کرده و این خطایی که گزارش کردین معمولا به این دلیل پیش میاد.

  4. محمد رستمی (خریدار محصول)

    سلام استاد وقت بخیر. من تا این فصل با دوره پیش اومدم همه چیز عالی پیش رفت اما بعد از اینکه store را با دستور createStore ایجاد کردم اول اینکه این دستور در vscode روی اون خطی کشیده میشه که این دستور را استفاده نکنید و به جای آن از configureStore استفاده کنید. از طرفی بعد از ایجاد استور کلاً جنگو من این خطا را میده

    You’re accessing the development server over HTTPS, but it only supports HTTP.

    ممنون میشم راهنمایی کاملی به زبان فارسی بفرمایید چطور این خطا را رفع کنم. تو سایت‌های خارجی هم گشتم کمی زبانم ضعیف هست درست متوجه نشدم چی میگن. ممنون

    • مصطفی آصفی

      سلام و سپاس از اطلاعتون. بله بر اساس این پست این دستور منقضی شده ولی این به معنی از کار افتادن دستور نیست. دستور مثل سابق کار می کنه منتها اون هشدار اضافه شده و اون خط روی دستورات منقضی (deprecated) کشیده میشه تا به نوعی کاربر به استفاده از معماری جدید و به‌روز تشویق شه. مشکلی ایجاد نمی کنه و فعلا قابل استفاده هست.
      خطای دومی که دریافت می کنید سمت جنگو هست و احتمالا به این دلیله که تو تنظیمات (settings) ویژگی SECURE_SSL_REDIRECT برابر True هست و خود به خود ریدایرکت میشید به پروتکل https و باید اون رو False کنید.
      SECURE_SSL_REDIRECT = False

  5. رضا (خریدار محصول)

    درود بر شما
    این فصل رو تموم کردم و خیلی خوب و با حوصله و دقیق مفاهیم بیان شده بودن.

    فقط ای کاش قبل از رفتن به سراغ پروژه ی اصلی و پیاده سازی ریداکس، یک پروژه ی ساده مثل
    counter (https://www.freecodecamp.org/news/learn-redux-by-making-a-counter-application/)
    رو مخاطب تجربه میکرد و بعد وارد فصل 3 میشد.
    و البته جای Redux Toolkit و Redux Persist و Redux Saga هم در این فصل خالی بود و به نظرم میتونست این فصل رو تبدیل به یک آموزش تقریبا جامع بکنه و امیدوارم در آینده اضافه بشه.

    • مصطفی آصفی

      سلام و ممنون از لطفتون. ببینید خیلی در مورد ریداکس میشه صحبت کرد ولی در این صورت دوره خیلی طولانی می‌شد و از هدف اصلی دور میشدیم. همون طور که در مورد ری اکت و خود جنگو هم همین طوره. ری اکت بوت استرپ همین طور. تو دوره های فول استک شما از فناوری ها استفاده می کنید برای هدف خاصی و بعد بسته به نیاز ممکنه برید روی یکی خودتون رو خیلی قوی کنید.
      مثلا بعد از پایان این فروشگاه وقتی بردینش زیر کار متوجه بشین که ریداکسش باید خیلی قوی تر و امنیتی تر بشه. در این صورت اصلا چند هفته فقط روی ریداکسش کار کنید.

  6. امین اجاقی (خریدار محصول)

    سلام بر استاد عزیز و گرامی مصطفی آصفی عزیز و دوست داشتنی درود و برکت خدا بر شما عزیزان استاد من فصل یک و دو را به پایان رساندم بسیار زیبا و روان مثل همیشه مطالب را به نیکویی بیان داشتید و بصورت کامل همه مسائل را از پایه شرح دادید که جای سپاس و ستایش دارد و اکنون به شروع این فصل رسیده ام گفتم یک سلامی در این قسمت به شما استاد عزیز و دوستان عرض نمایم برکت خدای متعال از آسمان نیکویی هایشان بر شما عزیزان و عشق زندگیتان و خانواده ها و دوستان و آشنایانتان.

    • مصطفی آصفی

      سلام و ممنون از محبت شما آقای اجاقی عزیز. انشالله این آموزش به یک پروژه کامل منتهی بشه که بتونه در زندگی حرفه ای شما و دوستان دیگه موثر باشه.

  7. amin (خریدار محصول)

    سلام مجدد جناب آصفی
    وافعیت من خودم فول استک نیستم و تمرکزم در حال حاضر روی ری اکت هستش
    مباحثی هم که گفتم مثل کوکی و سشن و jwt و ثبت نام کاربر با شبکه های اجتماعی و… سطح دسترسی کاربر منظورم توضیحات و مدیریت اونها در سمت فرانت کار بود نه در سمت بک اند…
    اگه امکانش هست این موارد رو در قسمت ری اکتی کار پوشش بدین (واقعیت من خودم الان نیازی به قسمت های بک اندی پروژه ندارم و پکیج هایی هم که معرفی کردین همگی مربوط به برنامه نویسی بک اند بودن و لازمم نمیشه که برم تهیه کنم اونها رو به خاطر مباحث مذکور)

    • مصطفی آصفی

      سلام مجدد. متوجه شدم. انشالله تو فصل های بعدی روی اعتبارسنجی سمت فرانت اند هم جداگانه صحبت می کنیم.

  8. amin (خریدار محصول)

    سلام مجدد جناب آصفی
    ممنون از توضیحات شما ، واقعیت خودم ریداکس رو تا حدودی بلد بودم و کار کرده بودم… ولی ویدئو معرفی دوره رو که دیدم برام جذاب بود که ادامه بدم دوره شما رو و ویدئو درس 1 که رایگان در هم رویش منتشر شده بود و 45 دقیقه بود و دیدم… خیلی خوب و مفهومی توضیح داده بودین و از سبک آموزش شما و نحوه تدریس و بیانتون خیلی خوشم اومد، خواستم تشکر کنم از شما
    درخواستی داشتم از شما جناب آصفی و اون هم این بود که لطفا فصل احراز هویت در سمت فرانت رو خیلی کامل آموزش بدینش ، والا منابع آموزشی مخصوصا توی وب فارسی خیلی کم پیدا میشه برای این مورد… منظورم از ابتدای ثبت نام کاربر به وسیله فرم ورود و اعتبار سنجی فرم ها و ارسال اطلاعات فرم به سرور و سپس دریافت جواب سرور ، نحوه مدیریت اطلاعات ارسالی و دریافتی بوسیله کوکی یا سشن و jwt و… سپس با توجه به جواب سرور نحوه دسترسی کاربر به سایت و… اگر ثبت نام با شبکه های اجتماعی هم مثل گوگل و…. هم داخلش باشه که خیلی خوب میشه
    والا خودتون استاید و میدونید که این مبحث احراز هویت و سطح دسترسی خیلی گسترده هستش و نکته زیاد داره توش ، انشاالله هرچی کامل تر بگید کمک بیشتری رو کردید به همگی

    • مصطفی آصفی

      سلام مجدد. از لطفتون ممنونم. بله سعی می کنیم در نهایت پروژه رو به جایی برسونیم که واقعا بتونید ازش برای مشتری یا استارتاپتون استفاده کنید.
      البته توصیه می‌کنم سرفصل‌های دوره‌های پایین رو ببینید. از مواردی که گفتین بعضی پوشش داده شدن. مثلا بحث توکن رو با ثبت نام ایمیلی تو دوره جنگو رست گفتیم و ثبت نام با گوگل و فیس‌بوک رو تو دوره ساخت شبکه اجتماعی با جنگو. تو این دوره دیگه احتمالا سراغ موارد قبلی نمی‌ریم. اینجا احراز هویت پیامکی رو سعی می کنیم داشته باشیم.
      آموزش جنگو رست (+)
      آموزش ساخت سایت شبیه اینستاگرام (+)

  9. amin

    جناب آصفی چندتا سوال دیگه هم داشتم از جناب عالی
    من ری اکت کار هستم میخواستم بدونم
    1- قسمت فرانت پروژه چند فصل دیگه مونده؟ میشه بگید چه سر فصل هایی دقیق در سمت فرانت مونده؟
    2- مبحث احرار هویت و سطح دسترسی کاربر در سمت فرانت رو هم پوشش میدین به صورت کامل؟

    • مصطفی آصفی

      سلام مجدد. فصل چهارم که طراحی سبد خرید هست شنبه منتشر میشه. اینستاگرام هم رویش رو دنبال کنید که به موقع مطلع بشید. بعد از اون ثبت نام کاربر انشالله با احراز هویت پیامکی رو تو یک یا دو فصل خواهیم داشت (شاید بک اند و فرانت اند رو جدا بگیم). بعد هم درگاه پرداخت. اصل کارمون تا این بخش هست و فروشگاه کامل میشه. ۴ فصل دیگه. بعد از اون بسته به درخواست فراگیران شاید تبدیل به پلتفرم یا فارسی سازی یا … رو اولویت بدیم.

  10. amin

    سلام
    از ریداکس Toolkit استفاده کرید در این آموزش؟

    • مصطفی آصفی

      سلام به شما. خیر. فیلم معرفی رو ملاحظه کنید. محیط درس ها رو توضیح دادم.

  11. حسین

    بی صبرانه منتظر جلو رفتن آموزش هستم … تا ی بار دیگه از آموزشای مفهومیتون استفاده ببرم …موفق باشید انشالله

    • مصطفی آصفی

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

  12. پتروفیان

    سلام ، در این آموزش نحوه ی اتصال فروشگاه به درگاه پرداخت ایرانی (مثلا زرین …) آموزش داده می شه ؟

    • مصطفی آصفی

      سلام به شما. انشالله تو فصل های بعدی به این موضوع هم می رسیم. لطفا فیلم درس صفر فصل اول (+) رو تماشا کنید اونجا مسیر رو توضیح دادم.

  13. احمد

    با سلام

    ایا این فصل آخر این آموزش است یا فصلول دیگری باقی مانده؟

    • مصطفی آصفی

      سلام به شما. هنوز فصل های دیگه ای در راه هست. لطفا درس صفر فصل ۱ (+) رو با دقت تماشا کنید. مسیر رو اونجا توضیح دادم.

دیدگاه خود را بنویسید

نظرات کاربران در خصوص دوره 

13 دیدگاه برای آموزش فروشگاه آنلاین با جنگو و ری اکت — فصل ۳: ریداکس

  1. sali (خریدار محصول)

    سلام وقت بخیر
    پکیج redux-devtools-extension
    مشکل داره و نصب نمیشه
    بنابراین composedevtools در store کار نمیکنه و اپ بالا نمیاد

    ERROR in ./src/store.js 5:0-63
    Module not found: Error: Can’t resolve ‘redux-devtools-extension’ in ‘C:\Users

    ممنون میشم راهنمایی فرمایید

    • مصطفی آصفی

      سلام وقت بخیر. خطای نصب رو البته گزارش نکردین ولی در کل چون دپریکیت شده می تونید با دستور پایین به صورت اجباری دستور نصبش رو به npm بدین (چون کدها اینجا راست چین میشن نظر رو کپی و داخل یه ادیتور مثل وی اس کد یا نوت پد پلاس پلاس پیست کنید تا کدهایی که نوشتم رو بتونید به خوبی بخونید و استفاده کنید):

      دستور نصب اجباری:
      npm install redux-devtools-extension –force

      یا از این دستور استفاده کنید:
      npm install redux-devtools-extension –legacy-peer-deps

      نتیجه رو لطفا گزارش کنید.

  2. ehsan eslami (خریدار محصول)

    سلام من موقع نصب redux-devtools-extension با ارور مواجه میشم
    npm ERR! code ERESOLVE
    npm ERR! ERESOLVE unable to resolve dependency tree
    npm ERR!
    npm ERR! While resolving: frontend@0.1.0
    npm ERR! Found: redux@5.0.1
    npm ERR! node_modules/redux
    npm ERR! redux@”^5.0.1″ from the root project
    npm ERR!
    npm ERR! Could not resolve dependency:
    npm ERR! peer redux@”^3.1.0 || ^4.0.0″ from redux-devtools-extension@2.13.9
    npm ERR! node_modules/redux-devtools-extension
    npm ERR! redux-devtools-extension@”*” from the root project
    npm ERR!
    npm ERR! Fix the upstream dependency conflict, or retry
    npm ERR! this command with –force or –legacy-peer-deps
    npm ERR!
    npm ERR!
    npm ERR! For a full report see:
    npm ERR! C:\Users\E2\AppData\Local\npm-cache\_logs\2024-03-21T15_01_50_598Z-eresolve-report.txt

    npm ERR! A complete log of this run can be found in: C:\Users\E2\AppData\Local\npm-cache\_logs\2024-03-21T15_01_50_598Z-debug-0.log
    PS C:\Users\E2\Desktop\react-jango-eshop\frontend> npm install redux-devtools-extension
    npm ERR! code ERESOLVE
    npm ERR! ERESOLVE unable to resolve dependency tree
    npm ERR!
    npm ERR! While resolving: frontend@0.1.0
    npm ERR! Found: redux@5.0.1
    npm ERR! node_modules/redux
    npm ERR! redux@”^5.0.1″ from the root project
    npm ERR!
    npm ERR! Could not resolve dependency:
    npm ERR! peer redux@”^3.1.0 || ^4.0.0″ from redux-devtools-extension@2.13.9
    npm ERR! node_modules/redux-devtools-extension
    npm ERR! redux-devtools-extension@”*” from the root project
    npm ERR!
    npm ERR! Fix the upstream dependency conflict, or retry
    npm ERR! this command with –force or –legacy-peer-deps
    npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
    npm ERR!
    npm ERR!
    npm ERR! For a full report see:
    np

  3. mehdi mahdavi (خریدار محصول)

    سلام خدا قوت
    درس نهم این فصل برای من مشکل زیر را نشان میده برای مشاهده صفحه جزیات محصول ممنون میشم راهنمایی بفرمایید
    ERROR
    Cannot read properties of undefined (reading ‘params’)
    TypeError: Cannot read properties of undefined (reading ‘params’)
    at http://localhost:3000/static/js/bundle.js:1468:97
    at commitHookEffectListMount (http://localhost:3000/static/js/bundle.js:39282:30)
    at commitPassiveMountOnFiber (http://localhost:3000/static/js/bundle.js:40775:17)
    at commitPassiveMountEffects_complete (http://localhost:3000/static/js/bundle.js:40747:13)
    at commitPassiveMountEffects_begin (http://localhost:3000/static/js/bundle.js:40737:11)
    at commitPassiveMountEffects (http://localhost:3000/static/js/bundle.js:40727:7)
    at flushPassiveEffectsImpl (http://localhost:3000/static/js/bundle.js:42612:7)
    at flushPassiveEffects (http://localhost:3000/static/js/bundle.js:42564:18)
    at commitRootImpl (http://localhost:3000/static/js/bundle.js:42523:9)
    at commitRoot (http://localhost:3000/static/js/bundle.js:42306:9)

    • مصطفی آصفی

      سلام وقت بخیر. لطفا همون طور که تو توضیحات فصل ۱ درج کردم react-router-dom نسخه ۵ رو نصب کنید. شما احتمالا نسخه ۶ استفاده می کنید. کامپوننت Route تو این نسخه تفاوت کرده و این خطایی که گزارش کردین معمولا به این دلیل پیش میاد.

  4. محمد رستمی (خریدار محصول)

    سلام استاد وقت بخیر. من تا این فصل با دوره پیش اومدم همه چیز عالی پیش رفت اما بعد از اینکه store را با دستور createStore ایجاد کردم اول اینکه این دستور در vscode روی اون خطی کشیده میشه که این دستور را استفاده نکنید و به جای آن از configureStore استفاده کنید. از طرفی بعد از ایجاد استور کلاً جنگو من این خطا را میده

    You’re accessing the development server over HTTPS, but it only supports HTTP.

    ممنون میشم راهنمایی کاملی به زبان فارسی بفرمایید چطور این خطا را رفع کنم. تو سایت‌های خارجی هم گشتم کمی زبانم ضعیف هست درست متوجه نشدم چی میگن. ممنون

    • مصطفی آصفی

      سلام و سپاس از اطلاعتون. بله بر اساس این پست این دستور منقضی شده ولی این به معنی از کار افتادن دستور نیست. دستور مثل سابق کار می کنه منتها اون هشدار اضافه شده و اون خط روی دستورات منقضی (deprecated) کشیده میشه تا به نوعی کاربر به استفاده از معماری جدید و به‌روز تشویق شه. مشکلی ایجاد نمی کنه و فعلا قابل استفاده هست.
      خطای دومی که دریافت می کنید سمت جنگو هست و احتمالا به این دلیله که تو تنظیمات (settings) ویژگی SECURE_SSL_REDIRECT برابر True هست و خود به خود ریدایرکت میشید به پروتکل https و باید اون رو False کنید.
      SECURE_SSL_REDIRECT = False

  5. رضا (خریدار محصول)

    درود بر شما
    این فصل رو تموم کردم و خیلی خوب و با حوصله و دقیق مفاهیم بیان شده بودن.

    فقط ای کاش قبل از رفتن به سراغ پروژه ی اصلی و پیاده سازی ریداکس، یک پروژه ی ساده مثل
    counter (https://www.freecodecamp.org/news/learn-redux-by-making-a-counter-application/)
    رو مخاطب تجربه میکرد و بعد وارد فصل 3 میشد.
    و البته جای Redux Toolkit و Redux Persist و Redux Saga هم در این فصل خالی بود و به نظرم میتونست این فصل رو تبدیل به یک آموزش تقریبا جامع بکنه و امیدوارم در آینده اضافه بشه.

    • مصطفی آصفی

      سلام و ممنون از لطفتون. ببینید خیلی در مورد ریداکس میشه صحبت کرد ولی در این صورت دوره خیلی طولانی می‌شد و از هدف اصلی دور میشدیم. همون طور که در مورد ری اکت و خود جنگو هم همین طوره. ری اکت بوت استرپ همین طور. تو دوره های فول استک شما از فناوری ها استفاده می کنید برای هدف خاصی و بعد بسته به نیاز ممکنه برید روی یکی خودتون رو خیلی قوی کنید.
      مثلا بعد از پایان این فروشگاه وقتی بردینش زیر کار متوجه بشین که ریداکسش باید خیلی قوی تر و امنیتی تر بشه. در این صورت اصلا چند هفته فقط روی ریداکسش کار کنید.

  6. امین اجاقی (خریدار محصول)

    سلام بر استاد عزیز و گرامی مصطفی آصفی عزیز و دوست داشتنی درود و برکت خدا بر شما عزیزان استاد من فصل یک و دو را به پایان رساندم بسیار زیبا و روان مثل همیشه مطالب را به نیکویی بیان داشتید و بصورت کامل همه مسائل را از پایه شرح دادید که جای سپاس و ستایش دارد و اکنون به شروع این فصل رسیده ام گفتم یک سلامی در این قسمت به شما استاد عزیز و دوستان عرض نمایم برکت خدای متعال از آسمان نیکویی هایشان بر شما عزیزان و عشق زندگیتان و خانواده ها و دوستان و آشنایانتان.

    • مصطفی آصفی

      سلام و ممنون از محبت شما آقای اجاقی عزیز. انشالله این آموزش به یک پروژه کامل منتهی بشه که بتونه در زندگی حرفه ای شما و دوستان دیگه موثر باشه.

  7. amin (خریدار محصول)

    سلام مجدد جناب آصفی
    وافعیت من خودم فول استک نیستم و تمرکزم در حال حاضر روی ری اکت هستش
    مباحثی هم که گفتم مثل کوکی و سشن و jwt و ثبت نام کاربر با شبکه های اجتماعی و… سطح دسترسی کاربر منظورم توضیحات و مدیریت اونها در سمت فرانت کار بود نه در سمت بک اند…
    اگه امکانش هست این موارد رو در قسمت ری اکتی کار پوشش بدین (واقعیت من خودم الان نیازی به قسمت های بک اندی پروژه ندارم و پکیج هایی هم که معرفی کردین همگی مربوط به برنامه نویسی بک اند بودن و لازمم نمیشه که برم تهیه کنم اونها رو به خاطر مباحث مذکور)

    • مصطفی آصفی

      سلام مجدد. متوجه شدم. انشالله تو فصل های بعدی روی اعتبارسنجی سمت فرانت اند هم جداگانه صحبت می کنیم.

  8. amin (خریدار محصول)

    سلام مجدد جناب آصفی
    ممنون از توضیحات شما ، واقعیت خودم ریداکس رو تا حدودی بلد بودم و کار کرده بودم… ولی ویدئو معرفی دوره رو که دیدم برام جذاب بود که ادامه بدم دوره شما رو و ویدئو درس 1 که رایگان در هم رویش منتشر شده بود و 45 دقیقه بود و دیدم… خیلی خوب و مفهومی توضیح داده بودین و از سبک آموزش شما و نحوه تدریس و بیانتون خیلی خوشم اومد، خواستم تشکر کنم از شما
    درخواستی داشتم از شما جناب آصفی و اون هم این بود که لطفا فصل احراز هویت در سمت فرانت رو خیلی کامل آموزش بدینش ، والا منابع آموزشی مخصوصا توی وب فارسی خیلی کم پیدا میشه برای این مورد… منظورم از ابتدای ثبت نام کاربر به وسیله فرم ورود و اعتبار سنجی فرم ها و ارسال اطلاعات فرم به سرور و سپس دریافت جواب سرور ، نحوه مدیریت اطلاعات ارسالی و دریافتی بوسیله کوکی یا سشن و jwt و… سپس با توجه به جواب سرور نحوه دسترسی کاربر به سایت و… اگر ثبت نام با شبکه های اجتماعی هم مثل گوگل و…. هم داخلش باشه که خیلی خوب میشه
    والا خودتون استاید و میدونید که این مبحث احراز هویت و سطح دسترسی خیلی گسترده هستش و نکته زیاد داره توش ، انشاالله هرچی کامل تر بگید کمک بیشتری رو کردید به همگی

    • مصطفی آصفی

      سلام مجدد. از لطفتون ممنونم. بله سعی می کنیم در نهایت پروژه رو به جایی برسونیم که واقعا بتونید ازش برای مشتری یا استارتاپتون استفاده کنید.
      البته توصیه می‌کنم سرفصل‌های دوره‌های پایین رو ببینید. از مواردی که گفتین بعضی پوشش داده شدن. مثلا بحث توکن رو با ثبت نام ایمیلی تو دوره جنگو رست گفتیم و ثبت نام با گوگل و فیس‌بوک رو تو دوره ساخت شبکه اجتماعی با جنگو. تو این دوره دیگه احتمالا سراغ موارد قبلی نمی‌ریم. اینجا احراز هویت پیامکی رو سعی می کنیم داشته باشیم.
      آموزش جنگو رست (+)
      آموزش ساخت سایت شبیه اینستاگرام (+)

  9. amin

    جناب آصفی چندتا سوال دیگه هم داشتم از جناب عالی
    من ری اکت کار هستم میخواستم بدونم
    1- قسمت فرانت پروژه چند فصل دیگه مونده؟ میشه بگید چه سر فصل هایی دقیق در سمت فرانت مونده؟
    2- مبحث احرار هویت و سطح دسترسی کاربر در سمت فرانت رو هم پوشش میدین به صورت کامل؟

    • مصطفی آصفی

      سلام مجدد. فصل چهارم که طراحی سبد خرید هست شنبه منتشر میشه. اینستاگرام هم رویش رو دنبال کنید که به موقع مطلع بشید. بعد از اون ثبت نام کاربر انشالله با احراز هویت پیامکی رو تو یک یا دو فصل خواهیم داشت (شاید بک اند و فرانت اند رو جدا بگیم). بعد هم درگاه پرداخت. اصل کارمون تا این بخش هست و فروشگاه کامل میشه. ۴ فصل دیگه. بعد از اون بسته به درخواست فراگیران شاید تبدیل به پلتفرم یا فارسی سازی یا … رو اولویت بدیم.

  10. amin

    سلام
    از ریداکس Toolkit استفاده کرید در این آموزش؟

    • مصطفی آصفی

      سلام به شما. خیر. فیلم معرفی رو ملاحظه کنید. محیط درس ها رو توضیح دادم.

  11. حسین

    بی صبرانه منتظر جلو رفتن آموزش هستم … تا ی بار دیگه از آموزشای مفهومیتون استفاده ببرم …موفق باشید انشالله

    • مصطفی آصفی

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

  12. پتروفیان

    سلام ، در این آموزش نحوه ی اتصال فروشگاه به درگاه پرداخت ایرانی (مثلا زرین …) آموزش داده می شه ؟

    • مصطفی آصفی

      سلام به شما. انشالله تو فصل های بعدی به این موضوع هم می رسیم. لطفا فیلم درس صفر فصل اول (+) رو تماشا کنید اونجا مسیر رو توضیح دادم.

  13. احمد

    با سلام

    ایا این فصل آخر این آموزش است یا فصلول دیگری باقی مانده؟

    • مصطفی آصفی

      سلام به شما. هنوز فصل های دیگه ای در راه هست. لطفا درس صفر فصل ۱ (+) رو با دقت تماشا کنید. مسیر رو اونجا توضیح دادم.

دیدگاه خود را بنویسید