Ошибка ts при сборке проекта yarn run build
Помогите пожалуйста) Появляется ошибка при сборке проекта yarn run build, при dev режиме всё без ошибок. Тут логика такая, на странице есть много карточек и по каждой из них можно кликнуть и тебя перекинет на страницу с айдишником в урле этой карточки. getProjects получает этот айдишник, делает запрос и возвращает нужный объект передавая его в Item пропсами. Использую Next 14.1 и ts 5
Ещё ругается на params где передаются пропсы, но там я тоже без понятия как можно исправить.
В типе "Props" отсутствуют следующие свойства из типа "{ id: number; title: string; url: string; }": id, title, urlts(2739)
item.tsx(6, 3): Ожидаемый тип поступает из свойства "params", объявленного здесь в типе "IntrinsicAttributes & Props"
.next/types/app/portfolio/[id]/page.ts:8:13
Type error: Type 'OmitWithTag<typeof import("E:/My projects/web-studio/src/app/portfolio/[id]/page"), "metadata" | "default" | "config" | "generateStaticParams" | "revalidate" | "dynamic" | "dynamicParams" | ... 6 more ... | "generateViewport", "">' does not satisfy the constraint '{ [x: string]: never; }'.
Property 'getProjects' is incompatible with index signature.
Type '(id: number) => Promise<Props>' is not assignable to type 'never'.
6 |
7 | // Check that the entry is a valid entry
> 8 | checkFields<Diff<{
| ^
9 | default: Function
10 | config?: {}
11 | generateStaticParams?: Function
error Command failed with exit code 1.
import Layout from '@/components/layout/layout';
import Item from '@/components/Item/item';
import { PHOTOS_API_URL } from '@/utils/prepareData';
type Project = {
id: number;
title: string;
url: string;
};
type Props = {
params: Project;
};
export async function getProjects(id: number): Promise<Props> {
const res = await fetch(`${PHOTOS_API_URL}/${id}`);
const projects = await res.json();
return projects;
}
export default async function Card({ params }: Props) {
const projects = await getProjects(Number(params.id));
return (
<Layout>
<Item params={projects} />
</Layout>
);
}