<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>نوشته های زهرا اسفندیاری</title><link>https://virgool.ir/feed/@zahraesfandiaryy1999</link><description></description><language>fa</language><pubDate>2026-11-11 17:07:38</pubDate><image><url>https://virgool.ir/images/default-avatar.jpg</url><title>زهرا اسفندیاری</title><link>https://virgool.ir/@zahraesfandiaryy1999</link></image><item><title>استفاده از vuex-module-decorators  در vuex</title><link>https://virgool.ir/@zahraesfandiaryy1999/استفاده-از-vue-module-decorators-در-vuex-tlcjemrefjfl</link><description>توی یکی از پروژه هایی که جدیدا توش شریک شدم از این پکیج استفاده شده بود خواستم هرچی خوندمو باهاتون به اشتراک بذارم.درواقع این پکیج برای این استفاده میشه که نوشتن vuex توی پروژه هارو برای ما راحت تر کنه.اگر از ماژول بندی توی vuex استفاده کرده باشید، حتما دیدید که یکم کار پیچیده ایه.درحالی که با استفاده از این پکیج میتونید ماژولهارو به صورت کلاس به سادگی بنویسید.import { Module, VuexModule } from &#39;vuex-module-decorators&#39;&#xA;&#xA;@Module&#xA;export default class MyModule extends VuexModule {&#xA;}حالا برای اینکه مثلا یک State  رو داخل این ماژول قرار بدیم، کافیه فقط به صورت زیر بنویسیمش:@Module&#xA;export default class Vehicle extends VuexModule {&#xA;  wheels = 2&#xA;}اگر به gettersاحتیاج دارید:export default class Vehicle extends VuexModule {&#xA;  wheels = 2&#xA;  get axles() {&#xA;    return this.wheels / 2&#xA;  }&#xA;}و اگر به Mutation احتیاج دارید:import { Module, VuexModule, Mutation } from &#39;vuex-module-decorators&#39;&#xA;&#xA;@Module&#xA;export default class Vehicle extends VuexModule {&#xA;  wheels = 2&#xA;&#xA;  @Mutation&#xA;  puncture(n: number) {&#xA;    this.wheels = this.wheels - n&#xA;  }&#xA;}و برای نوشتن Action هم کافیست:import { Module, VuexModule, Mutation, Action } from &#39;vuex-module-decorators&#39;&#xA;import { get } from &#39;request&#39;&#xA;&#xA;@Module&#xA;export default class Vehicle extends VuexModule {&#xA;  wheels = 2&#xA;&#xA;  @Mutation&#xA;  addWheel(n: number) {&#xA;    this.wheels = this.wheels + n&#xA;  }&#xA;&#xA;  @Action&#xA;  async fetchNewWheels(wheelStore: string) {&#xA;    const wheels = await get(wheelStore)&#xA;    this.context.commit(&#39;addWheel&#39;, wheels)&#xA;  }&#xA;}همانطور که دیدید، این پکیج کار ماژول بندی کردن vuex را بسیار راحت تر میکند.من فقط سعی کردم اینجا بهتون معرفیش کنم.برای دیدن همه ی مزیتهای این پکیج میتونین به سایت https://championswimmer.in/vuex-module-decorators/pages/core/actions.htmlسر بزنید.</description><category>زهرا اسفندیاری</category><author>زهرا اسفندیاری</author><pubDate>Fri, 20 Aug 2021 18:27:12 +0430</pubDate></item></channel></rss>