export const useArray = <T>(initData:T) => {
}
这个函数卸载ts中没有问题,但是卸载tsx中就报语法错误?在tsx中泛型该如何写?
------------------------------分割-------------------------
export const useArray = <T>(initData:T) => {
}
这个函数卸载ts中没有问题,但是卸载tsx中就报语法错误?在tsx中泛型该如何写?
------------------------------分割-------------------------
10 回答11.7k 阅读
2 回答3.2k 阅读✓ 已解决
2 回答4.3k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
2 回答1.7k 阅读✓ 已解决
4 回答2.5k 阅读✓ 已解决
5 回答3.8k 阅读
类型系统总是指导代码“某个变量是某个类型的”,因此你只能指导useArray是什么类型的。箭头函数在这里相当于一个字面量值,这个值满不满足被赋值变量的类型才是关键。
==== 分割线 ====
泛型相当于扩大了类型的包容性
类型约束变量,给变量赋的值要遵循变量的类型
你的类型还是 => void,实际却返回了一个对象就已经跑偏了。并且只要不是定义的地方,施加泛型类型约束都是有问题的。或者你可以摆脱变量赋值的黑洞,