gpt4 book ai didi

typescript - TypeScript Vue 组件中的泛型

转载 作者:行者123 更新时间:2023-12-03 15:51:41 25 4
gpt4 key购买 nike

我正在尝试将泛型类型提供给 vue 组件,但不知道如何从调用者那里提供它。

例如,对于下面的组件

export default class Toggle<T> extends Vue {
@Prop({ default: {} }) private payload!: T;
@Prop(Function) private handleCallback!: (payload: T) => Promise<any>;
}

我将如何为 T 提供类型当它被称为如下?
<toggle :payload="{propOfT: 'value of T'}" :handleCallback='someCallbackFn'/>

最佳答案

也许你可以使用

extend<Data, Methods, Computed, Props>(options?: ThisTypedComponentOptionsWithRecordProps<V, Data, Methods, Computed, Props>): ExtendedVue<V, Data, Methods, Computed, Props>;



interface Data {
dataProp: boolean
}

interface Methods {
methodOne: (name: Type) => Promise<void>
}

interface Props {
items: Item[]
}

export default Vue.extend<Data, Methods, {}, Props>({ ...

关于typescript - TypeScript Vue 组件中的泛型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57281820/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com