From 6c1798d9574388d9dd18ac3e208b979dc2c8a729 Mon Sep 17 00:00:00 2001 From: Santiago Cattaneo Date: Mon, 18 Apr 2022 13:26:48 -0300 Subject: [PATCH] * trying to deal with this bug https://stackoverflow.com/questions/71905879/blazor-wasm-bug-with-dotnet-publish-and-events --- BlazorReorderList/Reorder.razor | 2 +- BlazorReorderList/ReorderService.cs | 2 +- BlazorReorderList/wwwroot/ReorderJsInterop.js | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/BlazorReorderList/Reorder.razor b/BlazorReorderList/Reorder.razor index 4f9856d..a6f0fbe 100644 --- a/BlazorReorderList/Reorder.razor +++ b/BlazorReorderList/Reorder.razor @@ -18,7 +18,7 @@
@foreach (var item in Items.Select((v, i) => (v, i))) { -
@ChildContent(item.v)
diff --git a/BlazorReorderList/ReorderService.cs b/BlazorReorderList/ReorderService.cs index 7c698f0..d5ecf47 100644 --- a/BlazorReorderList/ReorderService.cs +++ b/BlazorReorderList/ReorderService.cs @@ -74,7 +74,7 @@ public class ReorderService : IAsyncDisposable public async ValueTask getPoint(MouseEventArgs ev) { var module = await moduleTask.Value; - return await module.InvokeAsync("getPoint", ev); + return await module.InvokeAsync("getPoint", ev.PageX, ev.PageY, ev.ClientX, ev.ClientY); } public async ValueTask getClientRect(ElementReference el) diff --git a/BlazorReorderList/wwwroot/ReorderJsInterop.js b/BlazorReorderList/wwwroot/ReorderJsInterop.js index 99fb633..21125d6 100644 --- a/BlazorReorderList/wwwroot/ReorderJsInterop.js +++ b/BlazorReorderList/wwwroot/ReorderJsInterop.js @@ -5,11 +5,11 @@ var _w = window, var dotNetInstance = []; // get position of mouse/touch in relation to viewport -export function getPoint(e) { +export function getPoint(pageX, pageY, clientX, clientY) { var scrollX = Math.max(0, _w.pageXOffset || _d.scrollLeft || _b.scrollLeft || 0) - (_d.clientLeft || 0), scrollY = Math.max(0, _w.pageYOffset || _d.scrollTop || _b.scrollTop || 0) - (_d.clientTop || 0), - pointX = e ? (Math.max(0, e.pageX || e.clientX || 0) - scrollX) : 0, - pointY = e ? (Math.max(0, e.pageY || e.clientY || 0) - scrollY) : 0; + pointX = Math.max(0, pageX || clientX || 0) - scrollX, + pointY = Math.max(0, pageY || clientY || 0) - scrollY; return { x: pointX, y: pointY }; } @@ -30,7 +30,7 @@ export function removeEvents(dotNet) { // only invoke events form the collection function onMove(e) { - var point = getPoint(e); + var point = getPoint(e.pageX, e.pageY, e.clientX, e.clientY); for (var i = 0; i < dotNetInstance.length; i++) { dotNetInstance[i].invokeMethodAsync("onMove", point); }