Javascript 使用Blazor多次调用JS互操作

Javascript 使用Blazor多次调用JS互操作,javascript,setinterval,blazor,blazor-server-side,blazor-jsinterop,Javascript,Setinterval,Blazor,Blazor Server Side,Blazor Jsinterop,我的服务器端Blazor应用程序多次调用一个javascript函数,该函数应该移动一个div(使用setInterval)。 问题是函数没有等待上一次调用完成。因此,DOM会同时从不同的js互操作中更改,从而导致不可预知的结果。我原以为电话会一个接一个地接起来。 你知道我如何解决这个问题吗?非常感谢 似乎唯一的方法是使用DOM上的自定义数据属性作为锁。 类似于:data lockincrement=“0” 每个JSInterop调用都应该包括lockincrement,因此Setinterva

我的服务器端Blazor应用程序多次调用一个javascript函数,该函数应该移动一个div(使用setInterval)。 问题是函数没有等待上一次调用完成。因此,DOM会同时从不同的js互操作中更改,从而导致不可预知的结果。我原以为电话会一个接一个地接起来。
你知道我如何解决这个问题吗?非常感谢

似乎唯一的方法是使用DOM上的自定义数据属性作为锁。 类似于:
data lockincrement=“0”

每个JSInterop调用都应该包括
lockincrement
,因此
Setinterval
将继续执行,直到
lockincrement
与值匹配,这意味着调用将按顺序执行。

似乎唯一的方法是使用DOM上的自定义数据属性作为锁。 类似于:
data lockincrement=“0”
每个JSInterop调用都应该包括
lockincrement
,因此
Setinterval
将继续执行,直到
lockincrement
与值匹配,这意味着调用将按顺序执行