Eu pode definir e usar uma função genérica como esta:
const fetchData = <T>(): T[] => {
const arr: T[] = []
// if stuff push to arr
return arr
}
const emptyStringArray = fetchData<string>();
No entanto, na minha realidade, eu tenho um monte de parâmetros e gostaria de separar as tipagens e atribuição da função.
Eu tenho tentado escrever assim:
type IFetchData = <T>() => T[]
const fetchData2: IFetchData = () => {
const arr: T[] = []
// if stuff push to arr
return arr
}
const emptyStringArray = fetchData2<string>();
No entanto, agora, a definição da função não reconhecer o T
como um tipo.
Não é possível localizar o nome de 'T'.
Eu tentei um monte de configurações diferentes sobre onde colocar o <T>
, mas nada parece funcionar - alguma idéia?