在 vue3 中,类型“unknown”不可分配给类型“any[]”

问题描述 投票:0回答:1

在 vue3 的代码中

const jobs = ref([]);

async function getQueueJobs(status: string) {
  let result = await request({
    url: '/api/v1/jobs',
    method: 'get',
    headers: { 'Content-Type': 'application/json' },
  });
  jobs.value = result['data'];
  console.log('......', jobs.value);
}

编译时出现错误提示

类型“unknown”不可分配给类型“any[]”。

尝试过

const jobs = ref(any[]);

编译时出现错误提示

元素访问表达式应该带有一个参数。

如何处理这个编译问题?

typescript vuejs3
1个回答
0
投票

理想情况下,您将为参考和结果添加适当的类型

data
属性。

引用很简单(假设定义了

Job
类型)

const jobs = ref<Job[]>([]);

参见 https://vuejs.org/guide/typescript/composition-api#typing-ref

输入结果

data
取决于
request()
是什么,但由于它默认为
unknown
,您可以简单地转换它

jobs.value = result.data as Job[];
© www.soinside.com 2019 - 2024. All rights reserved.