از Pista Academy حمایت کنید
مرور سریع مفاهیم اصلی پیش از تماشای کامل یا برای جمعبندی بعد از آموزش.
در این جلسه، مدرس به بررسی صفحه دیتیل غذا در فلاتر میپردازد. ابتدا یک اسکرین برای نمایش جزئیات غذا طراحی میشود و اطلاعات مربوط به غذا از مدل میل استخراج میگردد. سپس به ایجاد یک فانکشن برای هدایت کاربر به صفحه دیتیل غذا میپردازد، اما مشکلی در انتقال دادهها به این فانکشن ایجاد میشود که به دلیل عدم تعریف صحیح ورودیها به وجود میآید. در پایان، مدرس به ادامه جلسه اشاره میکند و این مسئله را برای جلسه بعد به انتقال میدهد.
نکات کلیدی
ایجاد صفحه دیتیل غذا با استفاده از مدل میل و نمایش اطلاعات مربوط به غذا.
مشکل انتقال داده به فانکشن هدایت به صفحه دیتیل به دلیل عدم تعریف صحیح ورودیها.
نیاز به بررسی دقیق ورودیها در فانکشنهای انتقال داده برای جلوگیری از خطاها.
متن ویدیو
متن زمانبندیشده این جلسه برای مرور، جستجو و دسترسی سریعتر.
سلام عرض میکنم خدمت دوستان عزیز. بریم سراغ ادامه بحثمون. جلسه قبلی ما رسیدیم
به اینجا که
اینا که میزدیم لیست غذا رو به ما نمایش
میداد. خب حالا میخوایم بریم سراغ صفحه
بعدی برنامهمون و میخوایم یه صفحهای
درست کنیم. وقتی من رو این غذا میزنم
دیتیل اون غذا رو به من نمایش بده. یعنی
صفحه دیتیل غذا رو میخوایم بریم درست
بکنیم.
خب روندمون بچهها مشابه همینه یعنی خیلی
تفاوتی با روندی که برای این صفحه رفتیم
نداره اول یه اسکرین درست میکنیم اینجا
اسمشو هرچی دوست دارید میتونید بذارید من
میذارم میل
دیتیلز
خب یه سری چیزاش کپیه مثلاً اینجا میارم
میلز و مدل کتگوری نه اینو میخوام
دیگه چی رو میخوام اینم مدل میلم میخوام براش یاد بنویسیم خب
کلس
میل
دیتل اسکرین
اکستند میکنم
ما توی این اسکیل نیاز به غذا داریم پس باید اینجا تو کانستراکترمون تعریف کنیم
اینجا اینجا غذامونو تعریف میکنیم با مدل میل.
خب یه اسکول میزنم فعلاً میایم پایین
ما میخوایم فعلاً بچهها تو این مرحله فقط
اسم غذا رو نمایش بدیم بالای صفحه و عکسشو
یعنی چیز خاصی نمیخوایم فعلاً اضافه
بکنیم حالا دیتیلشو بیشتر خواستیم انجام
بدیم احتمالاً بعد جلسه بعدی
بیایم اینجا یه دونه ابار میذارم
بعد یه تایتل اینجا میذارم دو نقطه
این بعد توی بادی
[تشویق]
ا
نتورک
یه ارتفاع بهش میدم مثلاً ۳۰۰ تا
یه عرض بهش میدم میگم هرچی اندازه عرض تو
صفحهستو بگیر
یه فیتم میزنم که عکسو چیز نکنه کراپ نکنم باکس
فیت
کاور
این شد کلیت صفحه میل دیتیل ما و
خب حالا تو مرحله بعدی باید چیکار کنیم؟ تو صفحه میلز من زمانی که روی این میل
آیتمو میزنم باید اینو پاس بده به اون در
حقیقت نویگیشنم بره تو صفحه میل دیتیل خب
میلا آیته
خودشو آن تپ اینجا من گذاشتم پس فقط باید
برم این فانکشنی که باید اینجا اجرا بشه
رو بنویسم درسته
میل آیتم اون فانکشنه رو به عنوان ورودی داره قبول میکنه یعنی از بالا داره میاد
پس من اینجا به عنوان ورودی ورودی تعریفش
میکنم.
فاینال
وید
فانکشن که ورودیش یه دونه میله
اسمشم میذاریم آن سلکت
خب حالا این میاد اینجا اجرا میشه و اون میلو بهش پاس میده
این میلی که اینجا ما بهش دسترسی داریم رو اینو بهش پاس میدم
خب حالا بیایم بالا دست این که میشه اینجا
من اینجا زمانی که دارم این آیتم پاس میدم
باید چیو پاس بدم بهش؟ بگم که تو اینو
لازم داری اینو
تو اینو لازم داری خب حالا بریم اینجا تعریفش کنیم بیام بالای فانکشن بعد تعریف
کنم
خب میایم اینجا میگم که وایت سلکت
میل
د تا ورودی داره حالا یه یه دونهشو ما
باید بیم جلوتر درست کنیم یکی بیلد
کانتکسته به کانتکست نیاز دارم اگه قرار
باشه برین صفحهها جابهجا بشن
یه دونم که میله
چون اینو نوشتم بچهها باید برم جای دیگه هم درستش کنم تو اینجا
من باید اینجام اینو درستش کنم خب بیایم اینجا
حالا
میگم نویگی
نویگیتور.
آف
کتکست.
پوش بکن یه صفحه بذار روش راجع به پوشم
صحبت کردیم درس قبلی فکر کنم متریال پیج
رود
میگم منو هدایت کن به صفحه میل
دیلت اسکرین که یه میلم به عنوان ورودی
میخواد
نکته دیگه خب حالا
من کانتکستو کجا پاس بدم؟
خب
اگه بخوام اینجا پاس بدم
نه بیام اینجا بیام اینجا
اینجا
یه فرا فانکشن بنویسم آنالز فانکشن بنویسم م
به همین سادگی خب چرا داره ارور میده
[موسیقی] همه چی درسته
یه چیزی رو
مشکلی که اینجا داره میگه میگه که من یه فانکشن به من تعریف کرده این بالا د تا
ورودی داره ولی من یه ورودی اینجا دارم
میدم
خب مشکل اینجاست
درسایی که این نباید خطا بده چون من اینجا
توی
اینجا اینجا
اگه بخوایم کانتکستو اینجا هم بهش بدیم که مشکلمون حل بشه
نه همچنان این ایراد داره اصلا اینجا نباید بدیم بهش مطمئنم
پس اینی که ما اینجا میدیم خیلی ربطی به اون خطا اون سمت نداره. این فقط خطای خود
اینو حل میکنه ولی همچنان ما اینجا این
خطا رو داریم.
نکتهای که داره میگه میگه که این کانتکستو باید اینجا به این پاس بدی. خب
بذار من اگه اینو از اینجا بردارم الان
مشکل حل میشه یا نه؟
نه اینم باز اینجا خطا رو دارم
بریم ببینیم کار میکنه یا نه یه جای کار میلنگه از همش
اوکی خیلی خب بریم بیایم ادامهشو جلسه بعدی
انجام بدیم و میخوایم بریم سراغ همین میل
دیتیلنو یه ذره ترتمیزترش کنیم فعلاً
خداحافظ
پرسشهای رایج
پاسخ کوتاه و مستقیم به پرسشهایی که معمولاً هنگام یادگیری این موضوع مطرح میشوند.
برای استخراج اطلاعات غذا از مدل میل، ابتدا یک اسکرین طراحی میشود و سپس اطلاعات مربوط به غذا از مدل میل استخراج میگردد.
مشکل انتقال داده به فانکشن هدایت به صفحه دیتیل به دلیل عدم تعریف صحیح ورودیها به وجود میآید.
آخرین بهروزرسانی محتوای متنی:
در این دوره جامع و پروژهمحور با فلاتر و دارت از صفر تا صد آشنا میشوید و با ساخت هشت اپلیکیشن واقعی که هر کدام نکات کلیدی و پرکاربرد فلاتر را پوشش میدهد، مهارتهای خود را به سطح بعدی میبرید. آنچه در این دوره یاد میگیرید: مقدمه و نصب ابزارها: آشنایی با فلاتر، دارت و راهاندازی محیط توسعه مبانی دارت و فلاتر: یادگیری سینتکس دارت و ساخت ویجتهای پایه با اپ «تاسانداز (Roll Dice)» غوطهوری در فلاتر: پیادهسازی اپ «کوئیز (Quiz)» برای مسلط شدن بر ساختار و چرخه حیات ویجتها دیباگ و رفع اشکال: تکنیکهای عیبیابی و ابزارهای Flutter DevTools واکنشگرایی و تمینگ: ساخت «Expense Tracker» برای یادگیری ویجتهای تعاملی، موضوعبندی (Theming) و طراحی ریسپانسیو مدیریت وضعیت (State Management): از Provider تا روشهای داخلی دارت با اپ «TODO» و «Meals» مسیریابی بین صفحات: ناوبری پیشرفته با «Meals App» و انتقال داده بین صفحات انیمیشنها و جلوههای بصری: افزودن حرکات پویا و تراکیب انیمیشنی در «Meals App» فرمها و ورودی کاربر: دریافت و اعتبارسنجی اطلاعات با «Shopping List» ارتباط با سرور: ارسال و دریافت HTTP، کار با JSON و REST API در «Shopping List» دسترسی به امکانات بومی دستگاه: استفاده از دوربین و ذخیرهسازی در «Favorite Places» فراخوانی پوش نوتیفیکیشن و چت زنده: ترکیب فلاتر با Firebase برای ساخت اپ چت با اعلان لحظهای بهروزرسانیها و چشمانداز آینده: نکات پایانی، منابع پیشرفته و مسیر یادگیری ادامهدار چرا این دوره؟ پروژهمحور و گامبهگام، مناسب برای تازهکارها و افراد با تجربه متوسط پوشش تمام جنبههای کلیدی: از طراحی رابط کاربری و انیمیشن تا اتصال به سرور و مدیریت وضعیت پیادهسازی چندین اپلیکیشن واقعی که میتوانید به سادگی برای نمونهکار شخصی یا پروژههای شغلی استفاده کنید لینک گیت هاب دوره جهت دسترسی به کد پروژه های هر فصل https://github.com/pistaacademy/flutter 🔔 همین حالا سابسکرایب کنید تا ویدیوهای آینده را از دست ندهید و یادگیری فلاتر را با هم شروع کنیم!