我有一个看起来像这样的函数:
getShopItems: async (parent, { payload }, ctx: Context, info) => { ... }
有没有办法转换第二个参数的payload
属性?我想做这样的事情,例如:
getShopItems: async (parent, { payload: ItemSearchPayload }, ctx: Context, info) => { ... }
我知道我可以通过命名对象并将其投射到某个东西来修复此问题,la:
interface Args {
payload: ItemSearchPayload;
}
getShopItems: async (parent, args: Args, ctx: Context, info) => { ... }
在这种情况下,我会得到预期的打字,但我希望有一个快捷方式,因为我有很多这样的功能,我宁愿不必创建一堆接口只是在这样的一个例子中使用它们。
答案 0 :(得分:1)
您可以输入内联的destructed参数:
getShopItems: async (
parent,
{ payload }: { payload: ItemSearchPayload },
ctx: Context, info
) => {
// ...
}