React原生:React Native手势处理程序:看起来像是在Yarn之后使用旧的API

nnt7mjpx  于 2022-12-30  发布在  React
关注(0)|答案(7)|浏览(144)

我使用yarn(删除node_modules并运行yarn)重新安装了react-native项目中的所有node_modules。安装完成后,我启动了我的应用,但却弹出了以下警告:
[react-native-gesture-handler]看起来您使用的是带有手势组件的旧API,请查看新的手势系统!
然后它列出了很多react-native元素(我认为),如下所示:

PanGestureHandler@http://IP/index.bundle?platform=android&dev=true&minify=false&app=com.legosocialmedia&modulesOnly=false&runModule=true:133321:38
PanGestureHandler@http://IP/index.bundle?platform=android&dev=true&minify=false&app=com.legosocialmedia&modulesOnly=false&runModule=true:132628:34
RCTView
View
AnimatedComponent@http://IP/index.bundle?platform=android&dev=true&minify=false&app=com.legosocialmedia&modulesOnly=false&runModule=true:68721:38
AnimatedComponentWrapper
RCTView
View
Card@http://IP/index.bundle?platform=android&dev=true&minify=false&app=com.legosocialmedia&modulesOnly=false&runModule=true:131894:36
CardContainer@http://IP/index.bundle?platform=android&dev=true&minify=false&app=com.legosocialmedia&modulesOnly=false&runModule=true:131451:34
RNSScreen

And so on....

我尝试重新安装react-native-gesture-handler(yarn romove react-native-gesture-handleryarn add react-native-gesture-handler),但没有任何改变。

omjgkv6w

omjgkv6w1#

新版本的react-native-gesture-handler会在您使用旧API版本时发出警告,但如果您的某个包/库使用它,也会发出警告。
要禁用警告,可以忽略日志。
在您的app. js/ app.tsx中

import { LogBox } from 'react-native';

LogBox.ignoreLogs([
  "[react-native-gesture-handler] Seems like you\'re using an old API with gesture components, check out new Gestures system!",
]);

Here you have the explanation

更新

此问题现已修复,因为:第一个月

cqoc49vn

cqoc49vn2#

这个错误是荒谬的:D强制2.1.1版本。你不会再看到那个恼人的错误:
"React Native手势处理程序":"2.1.1"、

iecba09b

iecba09b3#

这可能是由react-navigation软件包引起的,如果是,请使用@react-navigation/native-stack而不是此链接中的@react-navigation/stack

wmomyfyw

wmomyfyw4#

这种方法对我很有效。安装

npm i react-native-gesture-handler@2.1.1

或安装基于expo在启动服务器时提到的版本(例如:预期版本为2.1.1)
然后关闭服务器并通过重置缓存再次打开

expo r -c
disbfnqx

disbfnqx5#

我也有同样的问题。我一直收到这个警告!。下面提供的解决方案有助于忽略警告,但不是根解决方案。而且它可能会使您的应用程序更大。任何其他解决方案

import { LogBox } from 'react-native;
   LogBox.ignoreLogs([
  "[react-native-gesture-handler] Seems like you\'re using an old API with gesture components, check out new Gestures system!",
]);```
qco9c6ql

qco9c6ql6#

解决方案1:
实际上,如果你把react-native-gesture-handler更新到最新版本,这个警告就会显示出来。你可以通过添加下面的代码来忽略这个警告。

import { LogBox } from 'react-native';

LogBox.ignoreLogs([
  "[react-native-gesture-handler] Seems like you\'re using an old API with gesture components, check out new Gestures system!",
]);

解决方案二:
您可以使用以下命令将react-native-gesture-handler降级到旧版本。它将修复错误。

yarn add react-native-gesture-handler@2.1.1
hpcdzsge

hpcdzsge7#

响应本机CLI

请使用此版本

npm i react-native-gesture-handler@2.1.1

package.json

"react-native": "0.66.1",

"react-native-reanimated": "^2.4.1",

"@react-navigation/native": "^6.0.6",

"@react-navigation/native-stack": "^6.2.5",

相关问题