gpt4 book ai didi

JavaScript + MEAN 堆栈 : How to properly find "_id" field (not "id") in array?

转载 作者:行者123 更新时间:2023-11-28 17:24:19 25 4
gpt4 key购买 nike

我有一个带有 MongoDB 的 Angular 应用程序,我可以从其中抓取数据到名为 books 的数组中,该数组有一个条目,如下所示:

{_id: "5b768f4519d48c34e466411f", name: "test", reservation: null, reserved: false, __v: 0}

带有 TypeScript 接口(interface)

interface Books { 
id?: Number;
name: String;
reservation: Number;
reserved: Boolean;
}

我试图根据“_id”从此数组条目中查找保留值。当按下运行以下代码的按钮时,=== 之后的另一个不带下划线的“id”变量将被注入(inject):

findBook(id) {
const result = this.books.find( sfid => sfid._id === id);
console.log('reservation for this book is: ' + result.reserved);
// todo: do something if book is reserved
}

现在效果很好,我得到了结果,但在 Angular 调试器中我收到以下错误:

ERROR in src/app/components/index/index.component.ts(24,56): error TS2339: Property '_id' does not exist on type 'Books'.

这就是说我应该如何使用“_id”值名称正确搜索?将“sfid._id”替换为“sfid.id”不起作用。

最佳答案

接受的答案只是一种解决方法,可以让 Typescript 停止提示 _id 未在界面中实现。真正的解决方法是实现它:

interface Book {
_id : string; // <-- Add this
name: string;
reserved : boolean;
reservation : any;
}

关于JavaScript + MEAN 堆栈 : How to properly find "_id" field (not "id") in array?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51944655/

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