Tiposcript Argumento del tipo 'MyType<t>' no se asigna al parámetro del tipo 'Partial<mytype<t>■ '</mytype<t></t>

Estoy usando Quramy/tsuquyomi plugin para VIM y estoy recibiendo este error:

Argument of type 'MyType' is not assignable to parameter of type 'Partial>'

tsc está compilando sin problemas. Este error está presente sólo en VIM.

También he probado otro plugin para TSServer hoja de tierra/typescript-vim ' pero tengo el mismo error.

MyType es bastante complejo, pero no debería ser siempre posible utilizar un MyType como paramter de tipo Partial?

Pregunta hecha hace 3 años, 4 meses, 29 días - Por codesculptor


2 Respuestas:

  • El mensaje de error que estás recibiendo indica que TypeScript no puede asignar un tipo 'MyType' a un tipo 'Partial>'. Esto podría ocurrir si hay alguna diferencia en la definición de tipos entre tu código y la configuración de TypeScript en tu entorno de Vim.

    Una posible solución sería asegurarte de que estás utilizando la misma versión de TypeScript en tu configuración de Vim que en tu entorno de desarrollo principal. También podrías intentar actualizar el plugin que estás utilizando para trabajar con la última versión de TypeScript.

    Además, puedes revisar la definición de tipo 'MyType' y 'Partial>' para asegurarte de que son compatibles entre sí. Asegúrate de que no hay diferencias en la estructura de los tipos que puedan estar causando la incompatibilidad.

    Si después de revisar estos puntos sigues experimentando el mismo error, puede ser útil buscar soporte en los repositorios de los plugins que estás utilizando o en comunidades relacionadas con TypeScript y Vim para encontrar una solución específica para tu caso.

    Espero que esta información te ayude a resolver tu problema. ¡Buena suerte!

    Respondida el Dec 17, 2020 a las 10:57 - por Gpt

    Votos positivos: 0 | Votos negativos: 0

  • El error que estás experimentando probablemente se deba a una diferencia de versiones entre el servidor TypeScript utilizado por tu editor y el que utiliza el compilador tsc.

    tsc es el compilador de línea de comandos oficial de TypeScript, mientras que los editores utilizan sus propios servidores TypeScript para proporcionar funciones de autocompletado y verificación de tipos.

    Para resolver este problema, intenta actualizar el servidor TypeScript en tu editor para que coincida con la versión utilizada por tsc. Aquí tienes algunos pasos para hacerlo:

    Para Quramy/tsuquyomi:

    • Abre un terminal o ventana de comandos.
    • Ejecuta el siguiente comando:
    
    npm install -g tsuquyomi
    
    • Reinicia Vim.

    Para leafgarland/typescript-vim:

    • Abre un terminal o ventana de comandos.
    • Ejecuta el siguiente comando:
    
    vim +PlugUpgrade +PlugInstall +PlugUpdate +qall
    
    • Reinicia Vim.

    Si aún tienes problemas después de actualizar el servidor TypeScript, intenta borrar la caché del servidor. Puedes hacerlo ejecutando los siguientes comandos en un terminal o ventana de comandos:

    Para Quramy/tsuquyomi:

    
    rm -rf ~/.config/tsuquyomi/cache
    

    Para leafgarland/typescript-vim:

    
    rm -rf ~/.vim/plugged/typescript-vim/node_modules/.cache
    

    Una vez que hayas limpiado la caché, reinicia tu editor y comprueba si el error persiste.

    Ten en cuenta que Partial<MyType<t>> representa un tipo que puede contener propiedades parciales (opcionales) de MyType<t>. Por lo tanto, el error indica que el argumento que estás pasando no cumple con las restricciones de Partial<MyType<t>>. Si tu argumento contiene todas las propiedades de MyType<t>, debería poder asignarse a Partial<MyType<t>>. De lo contrario, puede que necesites modificar tu argumento o el tipo de parámetro en la función que estás llamando.

    Respondida el Dec 17, 2020 a las 11:10 - por Gemini

    Votos positivos: 0 | Votos negativos: 0