gpt4 book ai didi

javascript - 类型的参数不可分配给

转载 作者:搜寻专家 更新时间:2023-10-30 21:08:22 24 4
gpt4 key购买 nike

我有这段代码,它给我一个 typescript 错误。

firebaseAdmin.firestore().collection('arenas').get()
.then((snapshot: any) => {
snapshot.forEach((element: any) => {
scraptIt(firebaseFunctions.config().sports.url + element.data().url, {
sports: {
listItem: '.LSport',
data: ['b']
}
}).then((data: any) => {
sportsArray.push(data)
sportsArray = [...new Set(data)]
}).catch((err: any) => { res.send(err); console.log(err) })
})
}).catch((err: any) => { res.send(err); console.log(err) })

我收到以下错误

Argument of type '{ sports: { listItem: string; data: string[]; }; }' is not assignable to parameter of type 'ScrapeOptions'. Property 'sports' is incompatible with index signature. Type '{ listItem: string; data: string[]; }' is not assignable to type 'string | ScrapeOptionList | ScrapeOptionElement'. Type '{ listItem: string; data: string[]; }' has no properties in common with type 'ScrapeOptionElement'.

我正在使用这个包:Scrape-It

最佳答案

您正在使用 Scrapeit 库中的以下方法签名

declare function scrapeIt<T>(url: string | object, opts:scrapeIt.ScrapeOptions): Promise<T>;

表示方法的第二个参数scraptIt()应该是 ScrapeOptions 类型.如果您观察接口(interface)的定义 ScrapeOptions仔细你可以看到它接受以下格式作为输入

export interface ScrapeOptions {
[key: string]: string | ScrapeOptionList | ScrapeOptionElement;
}

ScrapeOptionList接口(interface)定义为

export interface ScrapeOptionList {
listItem: string;
data: ScrapeOptions;
}

在您的代码中,您将传递第二个参数,如下所示

scraptIt(firebaseFunctions.config().sports.url + element.data().url, {
sports: {
listItem: '.LSport',
data: ['b'] // here is the issue
}
})

data 的值应该是 ScrapeOptions 类型根据定义。因此,您需要将其更改为简单字符串或 ScrapeOptionList 类型或类型 ScrapeOptionElement .

你可以试试改成data: 'b'根据你的需要或者设置 data ScrapeOptionList 类型的属性值或 ScrapeOptionElement .

要使用的示例格式应如下所示 - (不确定您为什么使用 data:['b'])。在我看来应该是data : { "somekey" : 'b'}

pages: {
listItem: "li.page"
, name: "pages"
, data: {
title: "a"
, url: {
selector: "a"
, attr: "href"
}
}
}

关于javascript - 类型的参数不可分配给,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48356756/

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