Quiero construir una entrada con autocompletar contextual. Es decir, debe saber dónde está el cursor y debe proporcionar opciones de autocompletar basadas en la ubicación del cursor. El mejor ejemplo que puedo dar es algo así como entrada de consulta jql avanzada en jira. Sé que lo están haciendo al hacer que el div sea editable y envolver todas las palabras clave en intervalos. Pero me falta algo de conocimiento sobre cómo se vincula todo y cómo comenzar. También necesito hacerlo en angular, por lo que cualquier enfoque angular específico sería más útil. Si hay algún proyecto de código abierto que implemente algo similar, también sería útil. Puedo revisar el código y tratar de entender cómo se hace. Soy un poco nuevo en el desarrollo web, así que si alguien puede ayudarme, sería genial.
Lo que me viene a la mente es que al usar [(ngModel)] siempre sabes el valor actual de la entrada. Puede dividirlo en una matriz de palabras utilizando .split(' ') y luego generar a partir del último elemento de esa matriz (es decir, la palabra que se está escribiendo actualmente) una lista de sugerencias. Luego preséntelo de alguna manera para que el usuario lo seleccione. Tras la selección, puede reemplazar la última palabra de la matriz anterior con la que el usuario ha seleccionado y luego reconstruirla como una cadena.