در قسمت قبل در مورد مشکلی صحبت کردیم که با mutation ها داشتیم و آن مشکل synchronous بودن (همگام بودن یا نامتقارن بودن) mutation ها بود. در همان قسمت توضیح دادم که نیاز ما به انجام عملیات های ناهمگام (async) غیر قابل انکار است. ما دائما در حال تبادل داده با سرور هستیم و نمی توانیم آن را نادیده بگیریم. بنابراین چطور می توانیم مشکل sync (همگام) بودن mutation ها را حل کنیم؟ VueX برای حل این مشکل از قابلیتی به نام Action استفاده می کند. Action ها یک واحد میانی بین کامپوننت و mutation هستند که عملیات های async را اجرا کرده و سپس تغییر را commit می کنند. به عبارت دیگر کامپوننت ما به action می گوید که فلان عملیات async را انجام بده. action آنقدر منتظر می ماند که عملیات async تمام شود و پس از آن commit را انجام می دهد.
پنل نویسندگان