utilizando Directus SDK. Estoy tratando de hacer una función que haga esto, solo quiero cambiar el tipo (CollectionsNameChanges) cada vez que se llama a la función
const directus = new Directus<CollectionsNameChanges>('https://mysamelink/');Para esto creé esta función.
conexión.ts
//here I want to get a new Type, that's why I am passing title as a parameter export function DirectusConnection(title: any) { return new Directus<typeof title>('https://mysamelink/'); }miLista.ts
interface MyTypes { id: number; } export async function myFunction(){ type CollectionsNameChanges= { //collection name nameofCollection: MyTypes; }; //here I am calling my function with the type const directus = DirectusConnection(<CollectionsNameChanges>); const myList = await directus.items('nameofCollection').readMany(); return myList }Pero recibo un error en el mecanografiado que me dice que se esperaba esa expresión. aquí:
const directus = DirectusConnection(<DirectusCollection>);Deberías usar un parámetro genérico:
export function DirectusConnection<T>() { return new Directus<T>('https://mysamelink/'); } // or if you want to use a parameter as that generic type // but `title` isn't being used anywhere in this function export function DirectusConnection<T>(title: T) { return new Directus<T>('https://mysamelink/'); } // then later: const directus = DirectusConnection<CollectionsNameChanges>();