Proporcione sugerencias de tipo al editor de monaco
Estoy tratando de proporcionar la finalización de intellisense / código en un editor de JavaScript usando el editor de Mónaco. El código debe ser JavaScript válido, no mecanografiado.
Dado algún usuario ingresó un script como este:
function onMyEvent(event)
{
event.someProperty
}
Quiero proporcionar la finalización del código en el parámetro del evento, que es una clase de mecanografiado de la que tengo t.ds, y puedo inferir en tiempo de ejecución.
Idealmente, me gustaría decirle a Mónaco que el tipo deevent
esSomeEventClass
, y deja que haga el resto. Incluso si eso significaba agregar sugerencias de tipo al script. Pero no puedo ver cómo hacer eso. Intenté usar la sintaxis JSDoc y varias combinaciones en el script del usuario, pero parece que eso está bloqueado. FTB ve:https://github.com/Microsoft/monaco-editor/issues/203 yAgregar sugerencias de tipo JavaScript para VSCode / Monaco Intellisence
También intenté inyectar un d.ts dinámico, segúnhttps://microsoft.github.io/monaco-editor/playground.html#extending-language-services-configure-javascript-defaults
Pero declarar la función no parecía significar nada para el editor. Declarar que una nueva clase definitivamente funcionó, simplemente no puedo entender cómo decirle a Mónaco queevent
en esa función es un tipo específico.
Puedo ver la API registerCompletionItemProvider, pero eso no le da ningún contexto de dónde se declaró el elemento, etc., y tampoco me permite usar automáticamente el archivo d.ts que quiero.