ts用法总计:
- 高级写法: const headers = (options.headers ||= {})
这一行代码是一个逻辑表达式,其目的是确保在获取 options.headers 前将其初始化为空对象(如果它尚未定义),以避免后续操作中出现 undefined 或 null 引发的错误。
让我们逐步解释这个表达式:
options.headers 是一个对象,用于存储请求的头部信息。
||= 是一个赋值操作符,表示如果左侧的值为假(例如 null、undefined 或者 false),则将右侧的值赋给左侧变量。
因此,(options.headers ||= {}) 的含义是,如果 options.headers 为假(即未定义或者为空),则将一个空对象 {} 赋给 headers 变量,否则将保持 options.headers 的原有值。
这样做的目的是确保在设置请求头部信息之前,headers 变量始终指向一个对象,以便后续的操作不会因为 headers 为 undefined 或者 null 而出错。
nuxt3的 $fetch 是基于 https://github.com/unjs/ofetch
