自从用了Github Copilot, 我被震惊了大约无数回。
# 经过
2,3还没写。未完待续
- 写了我还不会写的代码
在试用NUXT3的时候,试了他的一个简易全局状态,写了这样一句:
let test = useState("cache", () => {
return { login: false, address: "0x0" };
});
1
2
3
2
3
在其他组件模板中使用的时候,测了下
// {{ test.login }} 和 {{ test.address }}
1
可以正常渲染出值。
ts没有报错,但是在模板中 test 下提示错误对象的类型为 "unknown"
于是乎建了个接口试试
interface Cache {
login: boolean;
address: string;
}
const test = useState("cache") as Cache;
1
2
3
4
5
2
3
4
5
报错类型“Ref<unknown>”缺少类型“Cache”中的以下属性: login, addressts(2352)
TS大神可能已经知道怎么解决了,可当时我还在一脸蒙圈,查了下useState的文档特别简单啥也没有,正说是不是翻翻源码。结果巧合的从后往前吧Cache一删除,copilot自动补全了一个类型。我一惊,这莫非是正确答案?!结果还真是,被AI教了我完全不会的一招……
写了我还没想好要怎么写的代码
写了我写完但没考虑齐全的代码
待续