آموزش کار با نوتیفیکیشن در Vue.js

خرید بک لینک

در این مقاله قصد داریم درباره کار با نوتیفیکیشن, های vue صحبت کنیم. در این آموزش, از پلاگین vue-toasted که یکی از پلاگین های خیلی کاربردی Vuejs برای کار با نوتیفیکیشن است، استفاده خواهیم کرد.

این پلاگین قابلیت های زیادی دارد، از جمله اینکه کاملاً واکنش گراست، به راحتی قابل استفاده است، ویژگی های جذاب و غنی از جمله آیکن ها، اکشن ها و… را دارا می باشد. در این آموزش قصد داریم هنگامی که داده ای را در پایگاه داده ذخیره می کنیم، یک نوتیفیکیشن Vuejs حاوی یک پیام مبنی بر اینکه آیتم مورد نظر با موفقیت در پایگاه داده ذخیره شد، نمایش می دهیم، و یا اگر خطایی در حین این فرآیند اتفاق افتاد، آن خطا را توسط این نوتیفیکیشن به نمایش می گذاریم.

برای قسمت back-end این پروژه از فریم ورک لاراول که یکی از فریمورک های محبوب PHP است، استفاده خواهیم کرد.

سرفصل های این آموزش

  1. نصب Vue.js توسط vue CLI
  2. نصب بوت استرپ 4
  3. ساخت یک فرم برای ورود اطلاعات
  4. نصب Axios برای ارسال داده ها توسط متد post
  5. نصب لاراول
  6. ساخت کنترلر و روت های مورد نیاز پروژه از فایل api.php
  7. حل مشکل CROS
  8. نصب کتابخانه vue-toasted

برای شروع کار، ابتدا باید Vue.js را نصب کنیم

توجه: دوستان عزیز در صورتیکه می خواهید فریم ورک ویو جی اس (Vue.js) را به صورت کاربردی و پروژه محور از صفر تا صد یاد بگیرید دوره آموزشی زیر را دریافت کنید:

1- نصب Vue.js توسط vue CLI

برای نصب vue CLI به صورت سراسری دستور زیر را در ترمینال وارد کنید

حال با دستور زیر یک پروژه Vuejs ایجاد می کنیم.

ایجاد یک پروژه جدید vue.js

به فولدر پروژه رفته و آن را با ویرایشگر مورد علاقه تان باز کنید. من در این پروژه از visual studio code استفاده می کنم، اما شما از هر ویرایشگری که تمایل دارید می توانید استفاده کنید.

2– نصب بوت استرپ 4

برای نصب بوت استرپ 4، دستور زیر را در ترمینال وارد کنید.

حال، فایل bootstarp.min.css را در فایل src >> main.js وارد (import) کنید.

3– ساخت یک فرم برای ورود داده ها

در این مثال، قصد دارم فقط دو فیلد نام و ایمیل را از کاربر دریافت کنم. برای اینکار در فولدر Components یک کامپوننت با نام ItemForm.vue ایجاد کنید.

حال فایل ItemForm.vue را به فایل src >> App.vue وارد (import) کنید.

4- نصب Axois برای ارسال داده ها توسط متد post

برای نصب Axios و همچنین vue-axios دستور زیر را در ترمینال وارد کنید. در واقع می خواهیم با ارسال اطلاعات توسط Axios پاسخ نهایی به صورت نوتیفیکیشن Vuejs نمایش داده شود.

حال فایل src >> main.js را باز کرده و پیکربندی مربوط به دو پلاگین فوق را در آن انجام دهید.

حال می توانیم توسط ارسال یک درخواست post به سرور لاراول، داده های فرم را در پایگاه داده ذخیره کنیم.

فایل ItemForm.vue را باز کرده و کدهای زیر را در متد addItem() بنویسید.

تا اینجا، من هنوز Api لاراول را ایجاد نکردم. در مرحله بعد این Api را ایجاد می کنم.

5- نصب فریمورک لاراول

دستور زیر را در ترمینال برای نصب لاراول وارد کنید.

سپس فایل .env را باز کرده و قسمت پایگاه داده مان را پیکربندی می کنیم.

در قدم بعدی model به همراه migration مورد نیازمان را ایجاد می کنیم.

حال فایل create_items_table.php را باز کرده و دستورات زیر را در آن قرار دهید.

سپس با دستور زیر جدول را در پایگاه داده ایجاد می کنیم.

با اجرای دستور فوق، جدول مان با موفقیت در پایگاه داده ساخته می شود. در این مثال من از پایگاه داده MySQL استفاده می کنم.

6- ساخت کنترلر و روت های مورد نیاز پروژه در فایل api.php

با دستور زیر یک کنترلر به نام ItemController ایجاد کنید.

حال یک روت در فایل routes >> api.php ایجاد کنید.

حال فایل ItemController.php را باز کنید. یک متد به نام Store() ایجاد کنید و کدهای زیر را در آن قرار دهید.

با اجرای برنامه با یک خطا تحت عنوان CROS مواجه خواهیم شد، که در مرحله بعد روش حل این خطا را به شما آموزش می دهیم.

7- حل خطای CROS

با دستور زیر پکیج laravel-CROS را نصب کنید.

حال باید با دستور زیر این پکیج را منتشر کنید.

حال فایل app >> Http >>keel.php را باز کرده و کدهای زیر را در آن قرار دهید.

با دستور زیر یک middleware به api مان اضافه می کنیم.

حال با دستور زیر سرور توسعه vue را اجرا کنید.

بعد از باز شده فرم در مرورگر، چند آیتم را در پایگاه داده ذخیره کنید.

در صورتی که عمل درج موفقیت آمیز بود، پیغام مورد نظر در کنسول نمایش داده می شود.

8– نصب کتابخانه vue-toasted برای ایجاد نوتیفیکیشن Vuejs

ترمینال را باز کرده و دستور زیر را در آن اجرا کنید.

حال فایل main.js را باز کرده و کتابخانه فوق را در آن ثبت (import) کنید. مطابق دستور زیر:

در کد بالا من یک پروپرتی به نام duration که زمان نمایش پیغام است را اضافه کردم. اما شما می توانید آبجکت های دیگری را هم به آن اضافه کنید.

همچنین می توانید یک لینک روی نوتیفیکیشن Vuejs تان نمایش دهید که با کلیک روی آن پیغام بسته شود.برای اینکار کد زیر را در فایل main.js و در ادامه کدهای قبلی بنویسید.

برای پیدا کردن api بیشتر در مورد این کتابخانه به اینجا مراجعه کنید.

حال می توانید از این نوتیفیکیشن Vuejs در داخل کامپوننت ItemForm.vue استفاده کنید.

به این ترتیب آموزش مان به پایان رسید.

کارت ویزیت لایه باز...

ما را در سایت کارت ویزیت لایه باز دنبال می‌کنید

برچسب: نویسنده: بازدید: 192 تاريخ: پنجشنبه 22 آذر 1397 ساعت: 8:29

صفحه بندی