相关疑难解决方法(0)

Typescript 的 GetStaticProps 仅用作箭头函数,而不用作函数声明

GetStaticProps 的 NextJs 文档中,它被编写为函数声明。如果我尝试输入此内容,如下所示:

export async function getStaticProps(): GetStaticProps  {

    const db = await openDB();
    const faq = await db.all('SELECT * FROM FAQ ORDER BY createDate DESC');
    return {props: {faq}};

}
Run Code Online (Sandbox Code Playgroud)

它不会工作,编译器告诉我

TS1055:类型“GetStaticProps”在 ES5/ES3 中不是有效的异步函数返回类型,因为它不引用 Promise 兼容的构造函数值。

另一方面,如果我使用箭头函数表达式(它应该是等效的),它确实可以工作:

export const getStaticProps: GetStaticProps = async () => {

    const db = await openDB();
    const faq = await db.all('SELECT * FROM FAQ ORDER BY createDate DESC');
    return {props: {faq}};

}
Run Code Online (Sandbox Code Playgroud)

那么,我是否遗漏了一些明显的东西?或者我被迫使用箭头函数语法?

typescript next.js

4
推荐指数
1
解决办法
2461
查看次数

标签 统计

next.js ×1

typescript ×1