我尝试在react-native中使用Navigation ..我添加了: npm install --save react-navigation
但是它给我这样的错误:
错误:捆绑失败:错误:无法解析模块react-native-gesture-handler
从C:\reactnative\proejectName\node_modules\@react-navigation\native\src\Scrollables.js
:模块react-native-gesture-handler
不会在急速模块地图存在
这是索引:
import { AppRegistry } from 'react-native';
import App from './App';
import { name as appName } from './app.json';
AppRegistry.registerComponent(appName, () => App);
Run Code Online (Sandbox Code Playgroud)
这是app.js
import React from 'react';
import { createStackNavigator, createAppContainer, } from 'react-navigation';
import First from './src/Components/First';
import DescriptionPage from './src/Components/DescriptionPage';
const Navigation = createStackNavigator({
First: {
screen: First,
},
DescriptionPage: {
screen: DescriptionPage,
},
});
const App = createAppContainer(Navigation);
export default App;
Run Code Online (Sandbox Code Playgroud)
这是package.json:
{
"name": "ProjectName",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest"
},
"dependencies": {
"react": "16.8.3",
"react-native": "0.59.1",
"react-native-sqlite-storage": "^3.3.10",
"react-navigation": "^3.5.1"
},
"devDependencies": {
"@babel/core": "7.4.0",
"@babel/runtime": "7.4.2",
"babel-jest": "24.5.0",
"eslint-config-rallycoding": "^3.2.0",
"jest": "24.5.0",
"metro-react-native-babel-preset": "0.53.1",
"react-test-renderer": "16.8.3"
},
"jest": {
"preset": "react-native"
}
}
Run Code Online (Sandbox Code Playgroud)
I B*_*I B 14
使用以下命令进行安装
yarn add react-native-gesture-handler
Run Code Online (Sandbox Code Playgroud)
然后链接特定项目中的库
react-native link react-native-gesture-handler
Run Code Online (Sandbox Code Playgroud)
在您的本机反应项目中找不到手势处理程序。运行此命令
npm install react-native-gesture-handler
Run Code Online (Sandbox Code Playgroud)
快乐编码
出现此错误有两个主要原因。
如果您没有安装react-native-gesture-handler
,则安装 npm 或yarn add react-native-gesture-handler
.
如果您已经这样做了,那么您需要重建您的应用程序,对于 androidreact-native run-android
和 ios 您应该安装 pod,然后再次运行。
cd ios && pod install --repo-update && cd .. react-native run-ios
您可能需要再次重新启动 Metro react-native start
。
小智 6
有同样的问题。解决了它:
npm uninstall react-native-gesture-handler --save
npm install react-native-gesture-handler --save
Run Code Online (Sandbox Code Playgroud)
如果您已经安装...
npm install react-native-gesture-handler
Run Code Online (Sandbox Code Playgroud)
在 App.js 代码的第一行添加一个import 'react-native-gesture-handler'
(注意必须位于第一行,位于所有代码和任何导入的顶部)
只需卸载在模拟器或任何物理设备上运行的应用程序并再次运行(再次安装)即可工作。
在我的情况下react-native-gesture-handler
已安装,但我将其卸载并重新安装。
1:卸载
npm uninstall react-native-gesture-handler --save
Run Code Online (Sandbox Code Playgroud)
2:安装
npm install react-native-gesture-handler --save
Run Code Online (Sandbox Code Playgroud)
3:链接
react-native link react-native-gesture-handler
Run Code Online (Sandbox Code Playgroud)
4:重启npm
npm restart
Run Code Online (Sandbox Code Playgroud)
或者
npm start
Run Code Online (Sandbox Code Playgroud)
小智 5
如果您使用 expo,则必须通过 expo 命令安装它:
expo install react-native-gesture-handler
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
36306 次 |
最近记录: |