我有一个执行一些数据库操作的函数。该实现被包装在一个try/catch块中。例如async function update({id, ...changes}): Promise<IUserResult> { try { //code implementation here return updatedUser } catch(error) { console.error }}打字稿编译器总是抛出一个错误,我返回未定义。我知道是这样,因为我没有从函数块本身显式返回任何值,而是从try/catch块中显式返回任何值。我该怎么办?我刚刚学习打字稿,我想知道如何获取返回值以匹配函数返回类型,在本例中为IUserResult.非常感谢。
1 回答
慕仙森
TA贡献1827条经验 获得超7个赞
Typescript 希望在所有情况下都有一个有效的返回类型,但在出现异常时您没有任何返回值。
您需要在 catch (或者最终)块中返回一些内容,或者创建像 Promise<IUserResult|void> 这样的返回类型
添加回答
举报
0/150
提交
取消