报错信息
类型 'Promise' 到类型 'string' 的转换可能是错误的,因为两种类型不能充分重叠。如果这是有意的,请先将表达式转换为 'unknown'。ts-plugin(2352)

问题原因
该 TypeScript 错误 (TS2352) 表示你正在尝试直接将一个 Promise<string> 类型赋值或转换为 string 类型,但这两个类型并不兼容。
Promise<string> 表示一个异步操作,最终会返回一个 string,但它本身不是 string。你不能直接使用 Promise 对象当作字符串来使用。
解决方案
1. 等待 Promise 解析
使用 await 或 .then() 来获取 Promise 解析后的值。
async function example() {
const promiseString: Promise<string> = Promise.resolve("hello");
const resolvedString: string = await promiseString; // 正确
console.log(resolvedString);
}
2. 断言(不推荐)
如果你确定 Promise 已经解析,可以先断言为 unknown,再断言为 string(但这不是推荐做法,除非你非常确定)。
const promiseString: Promise<string> = Promise.resolve("hello");
const forcedString: string = promiseString as unknown as ;


