eslint报错Spread types may only be created from object types解决方法

栏目: eslint 发布时间:2023-03-01

先来看一个 eslint 报错信息:

ERROR in src/views/components/table.vue:37:7
TS2698: Spread types may only be created from object types.
    35 |       pageSize: props.page.size,
    36 |       total: props.page.total_counts,
  > 37 |       ...context.attrs.pagination,
       |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
    38 |     }))

上述报错示例中 context.attrs.pagination 类型未知,而 spread 只能用于 Object 类型。

解决方法:

const pagination = computed(() => ({
  current: props.page.current_page,
  pageSize: props.page.size,
  total: props.page.total_counts,
  ...context.attrs.pagination as Record<unknown>,
}))

本文地址:https://www.tides.cn/p_eslint-spread-types-may-only-be-created-from-object-types

标签: eslint