Necesito modificar la url en la copia de un proyecto angular.
Cuando el usuario selecciona URL y copia (como ctrl+c), es
page/item/123necesito modificar eso para
page/item?id=123¿Cómo puedo hacer eso?
Motivo: no pude hacer que web.config funcione para pasar la ruta completa (elemento/123), por lo que angular no puede analizar lo que no está allí.
Sin embargo, puedo hacer que item?id=... funcione, por lo que abre "item" y allí puedo obtener el parámetro de consulta.
Agregado: en los comentarios se sugirió hacerlo de una manera/solo de la manera correcta y estoy de acuerdo, pero estoy aquí porque mi problema original no se puede resolver: web.config: reenviar la ruta completa con el parámetro
Cómo hacer que las reglas funcionen con parámetros y pasen la ruta completa para el análisis
Así es como se puede hacer:
html
<div (copy)="handleCopy($event)">page/item/1234</div>t
handleCopy(event: ClipboardEvent) { event.clipboardData.setData('text/plain', document.getSelection().toString().replace(/\/(?=[^\/]*$)/, "?id=")); event.preventDefault(); }