Skip to content

убираем задваивание событий#6

Merged
dimailn merged 1 commit intodimailn:vue-3from
VladimirIvanin:checkbox-click
Aug 1, 2025
Merged

убираем задваивание событий#6
dimailn merged 1 commit intodimailn:vue-3from
VladimirIvanin:checkbox-click

Conversation

@VladimirIvanin
Copy link
Copy Markdown

@VladimirIvanin VladimirIvanin commented Aug 1, 2025

чиним задвоение событий

как то иначе вашаются и отрабатывают обработчики

vue2
изображение

vue3

изображение

vue2

        handler = original_1._wrapper = function (e) {
            if (
            // no bubbling, should always fire.
            // this is just a safety net in case event.timeStamp is unreliable in
            // certain weird environments...
            e.target === e.currentTarget ||
                // event is fired after handler attachment
                e.timeStamp >= attachedTimestamp_1 ||
                // bail for environments that have buggy event.timeStamp implementations
                // #9462 iOS 9 bug: event.timeStamp is 0 after history.pushState
                // #9681 QtWebEngine event.timeStamp is negative value
                e.timeStamp <= 0 ||
                // #9448 bail if event is fired in another document in a multi-page
                // electron/nw.js app, since event.timeStamp will be using a different
                // starting reference
                e.target.ownerDocument !== document) {
                return original_1.apply(this, arguments);
            }
        };

veu3

function createInvoker(initialValue, instance) {
  const invoker = (e) => {
    if (!e._vts) {
      e._vts = Date.now();
    } else if (e._vts <= invoker.attached) {
      return;
    }
    callWithAsyncErrorHandling(
      patchStopImmediatePropagation(e, invoker.value),
      instance,
      5,
      [e]
    );
  };
  invoker.value = initialValue;
  invoker.attached = getNow();
  return invoker;
}
изображение

@dimailn dimailn merged commit 50586e1 into dimailn:vue-3 Aug 1, 2025
3 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants