programing

모든 작업의 이름을 기억하지 않고 vuex 디스패치를 호출하고 디스패치에서 문자열로 보내는 방법

prostudy 2022. 4. 17. 10:03
반응형

모든 작업의 이름을 기억하지 않고 vuex 디스패치를 호출하고 디스패치에서 문자열로 보내는 방법

다음과 같이 작업:

this.$store.dispatch({
      type: "getUsers",
      data
    }).then(() => {})

짜증나기만 할 뿐이야.메서드 이름을 알아야 한다.

나는 다음과 같은 것을 가지고 있다.

class UserModule extends ListModule<UserState, any, api.UserListItemModel> {

  actions = {

    // ActionContext requires two arguments State and root state
    async getAll(context: ActionContext<UserState, any>, data: Data) {}
  }
}

그렇게 불러도 좋다.actions.getUsers그 끈 같은 거 없이?활자표기가 편집기에 자동 완성되어 있어서 작업 이름을 기억하고 그 문제에 있어서 발송할 필요가 없다.

내 말은, 이름이 있는 지도를 만들면 답이 되겠지만 1000개의 이름이 있는 지도를 만들고 싶은지는 확실하지 않다는 거야.

https://github.com/istrib/vuex-typescript으로 결정을 내렸다.다음과 같이 적혀 있다.

작업/수정/게터 이름에 대한 문자열 리터럴 또는 상수가 없음 아니요

잘못된 페이로드 유형을 제공하여 작업/작업/작업/작업자의 오용

예상되는 페이로드 또는 게터 인수의 유형에 대한 모호하지 않은 힌트를 제공하는 Intellisense

참조URL: https://stackoverflow.com/questions/50398497/how-to-call-vuex-dispatch-without-remembering-names-of-all-actions-and-send-them

반응형