sourcecode

TypeScript의 클래스에 메모지 사용

codebag 2023. 6. 12. 21:21
반응형

TypeScript의 클래스에 메모지 사용

다음을 사용하여 TypeScript의 수업에서 메모화 기술을 사용하고 싶습니다.memoizee도서관.

다음은 제가 이미 시도한 몇 가지 코드입니다.

import memoize from "memoizee"
import { getModule, Module, MutationAction, VuexModule } from "vuex-module-decorators"
import store from "@/store"
import { User } from "./models"
import { UserAPI } from "./api"

@Module({ namespaced: true, name: "user", store, dynamic: true })
class UserModule extends VuexModule {
  user: User | null = null
  getUser = memoize(UserAPI.getUser, { maxAge: 10 * 60 * 1000, promise: true })

  @MutationAction
  async fetchProfile() {
    const user = await this.getUser()
    return { user }
  }
}

export default getModule(UserModule)

유감스럽게도, 그것은 무효입니다.TypeError: this.getUser is not a function.왜 그런 것일까요?그리고 타입스크립트의 클래스에서 메모지를 적절하게 사용하는 방법은 무엇입니까?

memoize는 다른 방법으로 가져올 필요가 있습니다.

제가 성공한 것은 다음과 같습니다.

import * as memoizee from 'memoizee';

언급URL : https://stackoverflow.com/questions/56430440/using-memoizee-with-typescripts-classes

반응형