notistack icon indicating copy to clipboard operation
notistack copied to clipboard

Enabling preventDuplicate causes enque to be ignored during close animation

Open satoren opened this issue 1 year ago • 2 comments

If preventDuplicate is enabled, calling closeSnackbar and then calling enqueueSnackbar again during the close animation will be ignored.

Expected Behavior

Displayed if enqueueSnackbar is called last when preventDuplicate is enabled.

Current Behavior

Not displayed even if enqueueSnackbar is called last when preventDuplicate is enabled.

      const key = enqueueSnackbar(button.message, { variant: button.variant });
      closeSnackbar(key);
      setTimeout(() => {
        // I want it to be displayed but ignored.
        enqueueSnackbar(button.message, { variant: button.variant });
      }, 100);

Steps to Reproduce

Link: https://codesandbox.io/s/divine-night-58x2g1?file=/MessageButtons.js:1215-1285

  1. click button

Context

I have a component that uses React.useEffect to keep showing the snackbar as long as the component is mounted, but it no longer works with React 18 + StrictMode. Only developer mode is affected, but I would like to fix it.

Your Environment

Tech Version
Notistack v3.0.1
React 18.2.0
Browser Chrome 110.0.5481.177
etc.

satoren avatar Mar 09 '23 00:03 satoren

I'm also facing this issue

seawish369 avatar Mar 23 '23 06:03 seawish369

It's been a while, and this issue is really disturbing me. Could anyone from the maintainer confirm and merge the fix?

rulim34 avatar Oct 26 '23 09:10 rulim34