typescript - 将 memoizee 与 TypeScript 的类一起使用
问题描述
我想在使用memoizee
库的 TypeScript 类中使用记忆技术。
这是我已经尝试过的一些代码:
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
. 这是为什么?以及如何在 TypeScript 的类中正确使用 memoizee?
解决方案
您可能需要以不同的方式导入 memoize。
这对我有用:
import * as memoizee from 'memoizee';
推荐阅读
- ios - 获取免费帐户角色而不是用户帐户角色 Xcode 8.2
- reactjs - React:在父组件中获取子组件组件的状态
- laravel - 如何允许路由参数使用 / 或 - 在 laravel 5.5
- controls - 如何在LabVIEW中将数值指示器的值发送到数值控制器
- typescript - 定义 combineLatest 的结果一次
- docker - 如何提取 docker 镜像的所有替代标签?
- sql - 如何在从 jdbc 读取表之前注册 hive udf
- calendar - Google Calendar API:错误«超出日历使用限制»
- java - Java 8 Lambda 表达式验证
- java - 如何将数据保存到android中多个按钮的单个值并将该总值保存在firebase中?