typescript:如何修复错误TS2531:对象可能为“null”

dgiusagp  于 2023-08-08  发布在  TypeScript
关注(0)|答案(2)|浏览(268)

假设directoryToBeZipped是一个字符串:

const destpath = directoryToBeZipped.match(/([^\/]*)\/*$/)[1] as string; // The destination path within the archive.

字符串
给出一个错误:

error TS2531: Object is possibly 'null'.


这是什么?我该怎么修?

cetgtptt

cetgtptt1#

两种可能的方法来解决这个问题。

const destpath = directoryToBeZipped.match(/([^\/]*)\/*$/)?.[1];

个字符

5jvtdoz2

5jvtdoz22#

检查match函数的MDN参考:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/match
请注意,如果未找到匹配项,则null是有效的返回值,因此返回类型为string | null

相关问题