react / react/react-native

LayoutAnimation.configureNext() broken in 0.76

Ouverte
#47,617 14 commentaires 26 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

API: LayoutAnimation Issue: Author Provided Repro Type: New Architecture
Langage dominant
C++
Étoiles
127k
Forks
25.3k
Merge moyen
1 j 23 h
PR mergées (30 j)
4

Description

Description

Initially opened as an Expo bug but seems like a react native 0.76 bug.

Link to initial issue for context: https://github.com/expo/expo/issues/32868

When showing or hiding content, LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut); usually automatically applies the "next" animation (Like opening and closing an accordion).

With react-native 0.76 and the new Architecture, this does not work anymore.

Steps to reproduce

1- Start a new react native project (with or without expo)
2- Create an Accordion or Collapsible component like https://snack.expo.dev/@baltagih/b638ce
3- LayoutAnimation.configureNext() does not apply the animations

React Native Version

0.76.1

Affected Platforms

Runtime - Android, Runtime - iOS

Output of npx react-native info
In expo managed project so some info might not display, like newArchEnabled.

info Fetching system and libraries information...
System:
  OS: macOS 15.1
  CPU: (16) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
  Memory: 3.46 GB / 32.00 GB
  Shell:
    version: "5.9"
    path: /bin/zsh
Binaries:
  Node:
    version: 18.18.0
    path: ~/.nvm/versions/node/v18.18.0/bin/node
  Yarn:
    version: 1.22.15
    path: ~/.yarn/bin/yarn
  npm:
    version: 9.8.1
    path: ~/.nvm/versions/node/v18.18.0/bin/npm
  Watchman:
    version: 2024.03.25.00
    path: /usr/local/bin/watchman
Managers:
  CocoaPods:
    version: 1.15.2
    path: /Users/mafiamalaria/.rvm/gems/ruby-3.0.5/bin/pod
SDKs:
  iOS SDK:
    Platforms:
      - DriverKit 24.1
      - iOS 18.1
      - macOS 15.1
      - tvOS 18.1
      - visionOS 2.1
      - watchOS 11.1
  Android SDK:
    API Levels:
      - "26"
      - "27"
      - "28"
      - "29"
      - "30"
      - "31"
    Build Tools:
      - 27.0.3
      - 28.0.3
      - 29.0.2
      - 29.0.3
      - 30.0.2
      - 30.0.3
      - 31.0.0
      - 35.0.0
    System Images:
      - android-30 | Google APIs Intel x86 Atom
      - android-30 | Google Play Intel x86 Atom
      - android-31 | Google APIs Intel x86 Atom_64
      - android-31 | Google Play Intel x86 Atom_64
      - android-32 | Google APIs Intel x86 Atom_64
      - android-Tiramisu | Google APIs Intel x86 Atom_64
    Android NDK: Not Found
IDEs:
  Android Studio: EAP AI-242.21829.142.2422.12329062 AI-242.21829.142.2422.12329062
  Xcode:
    version: 16.1/16B40
    path: /usr/bin/xcodebuild
Languages:
  Java:
    version: 1.8.0_292
    path: /usr/bin/javac
  Ruby:
    version: 3.0.5
    path: /Users/mafiamalaria/.rvm/rubies/ruby-3.0.5/bin/ruby
npmPackages:
  "@react-native-community/cli":
    installed: 15.1.2
    wanted: latest
  react:
    installed: 18.3.1
    wanted: 18.3.1
  react-native:
    installed: 0.76.1
    wanted: 0.76.1
  react-native-macos: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: Not found
  newArchEnabled: Not found
iOS:
  hermesEnabled: Not found
  newArchEnabled: Not found
Stacktrace or Logs
No stacktrace, animation never happens, no error thrown.
Reproducer

https://snack.expo.dev/@baltagih/b638ce

Screenshots and Videos

No response

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par l’appel à LayoutAnimation.configureNext() dans l’Expo Snack lié et reproduisez-le dans un nouveau projet React Native 0.76.1 utilisant la new Architecture. Comparez le comportement sur Android et iOS ; le travail est terminé lorsque la modification de layout suivante s’anime à nouveau au lieu de ne rien faire silencieusement.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
react-native
Domaine
mobile-dev
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.