TypeScript函数中trycatch 包含js-yaml 安全读取 yaml↩返回值类型必须要有 undefined 吗

代码:
image.png

Function lacks ending return statement and return type does not include 'undefined'

包:
js-yaml
安装的是 "@types/js-yaml": "^3.12.5"

虽说添加一个 undefined 它就不报这个错了。

但是在我试验 yaml.safeLoad() 这个函数过程中

yaml 文件什么都不写或者有语法错误,这个函数返回的都是 null

不知道是我思考不周或者有些情况没有想到,yaml.safeLoad() 这个函数会返回 undefined

我不想为这个函数的返回值多增加一个类型,以减少我后面对 undefined 的判断代码

再看

image.png

阅读 3.6k
1 个回答

trycatch,如果走catch就没有return了,等同于return undefined,所以try和catch两个语句返回的类型应该联合起来,所以ts给你提示缺少了一个类型

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进