React Native 错误:[Reanimated] `valueUnpacker`不是一个worklet,js引擎:爱马仕

atmip9wb  于 2023-10-22  发布在  React
关注(0)|答案(3)|浏览(198)

我是React Native的新手,这个错误并没有给我太多的帮助。我在想怎么解决这个问题。似乎有很多unawnsered类似的问题在这里,所以我想知道这是新的或共同的问题。

Error: [Reanimated] `valueUnpacker` is not a worklet, js engine: hermes

我真的不能提供足够的代码示例,但当我得到这个错误时,我刚刚启动了一个react-native-draggable-flatlist功能。

  • 更新-我深入研究了worklet是什么,并开始学习React Natvie Reanimate库,在那里我发现我需要在我的babel.js中包含以下内容
module.exports = function (api) {
    api.cache(true)
    return {
        presets: ['babel-preset-expo'],
        plugins: ['react-native-reanimated/plugin'],
    }
}

这导致了一个新的错误,我得到了:

Error: [Reanimated] Mismatch between JavaScript part and native part of Reanimated (3.5.1 vs 3.3.0).
See `https://docs.swmansion.com/react-native-reanimated/docs/guides/troubleshooting#mismatch-between-javascript-part-and-native-part-of-reanimated` for more details., js engine: hermes

我遵循了提供的步骤,tehre只是该包的一个实现:

└─┬ react-nati[email protected]
  └── [email protected]

然后我在package.json中设置了覆盖,但我仍然在mixmatch中遇到了同样的问题。我甚至用-c标志启动expo来重置该高速缓存。

luaexgnf

luaexgnf1#

所以我找到了这个解决方案如下:
解决方案:在升级react-native-reanized后,检查您是否已重建应用。如果您使用Expo Go,则必须使用捆绑到Expo SDK中的确切版本。
https://docs.expo.dev/versions/latest/sdk/reanimated/
如果你跟着我,然后删除覆盖开始此过程之前,或者你会有一些问题。

yk9xbfzb

yk9xbfzb2#

确保将以下内容添加到package.json中:yarn add react-native-reanimated and
yarn add react-native-gesture-handler。
然后执行以下步骤
1-import“react-native-gesture-handler”;
到App.tsx
2-npx expo start -c
如果使用CLI,请运行以下命令npx react-native start --reset-cache
我希望它能帮助

uz75evzq

uz75evzq3#

检查react-native-reanimated版本是否是捆绑到项目的Expo SDK中的确切版本。
我只是使用命令将Expo SDK 48升级到49:expo upgrade 49

安装与您的Expo SDK版本兼容的react-native-reanimated的确切版本
我希望这能帮助

相关问题