Agregué una funcionalidad simple para copiar un enlace al portapapeles, funciona bien en Edge y Chrome pero falla en Safari con el siguiente error:
El agente de usuario o la plataforma no permiten la solicitud en el contexto actual, posiblemente porque el usuario negó el permiso.
Creo que esto se debe a que Safari quiere que lo haga a través del evento de clic y Blazor está enrutando la solicitud a través de su capa de interoperabilidad.
¿Alguien consiguió que esto funcione?
Código de muestra:
Maquinilla de afeitar:
<button title="Copy link to clipboard" @onclick="@(e=> CopyToClipboard("someText"))">Copy</button>C#:
private async Task CopyToClipboard(string textToCopy) { await JSRuntime.InvokeVoidAsync("navigator.clipboard.writeText", textToCopy); }Tuve la llamada javascript en un archivo javascript separado, en una función, pero obtuve el mismo resultado.