Вызов JS многократно взаимодействует с Blazor - PullRequest
0 голосов
/ 03 апреля 2020

Мое серверное приложение Blazor несколько раз вызывает функцию javascript, которая должна перемещать div (используя setInterval). Проблема заключается в том, что функция не ожидает предыдущего вызова fini sh. В результате DOM изменяется одновременно с разных js операций, что приводит к непредсказуемым результатам. Я ожидал, что звонки будут складываться и выполняться по одному. У вас есть идея, как я могу решить эту проблему? Большое спасибо!

1 Ответ

0 голосов
/ 04 апреля 2020

Похоже, что единственный способ - использовать пользовательские атрибуты данных на DOM в качестве блокировки. Примерно так: data-lockincrement="0" Каждый вызов JSInterop должен включать, что lockincrement, поэтому Setinterval продолжается до тех пор, пока lockincrement не совпадет со значением, что означает, что вызовы будут выполняться последовательно.

...