无法从“node_modules\react-native-gesture-handler\createHandler.js”解析“fbjs/lib/areEqual”

JK8*_*JK8 7 react-native react-native-android react-native-navigation expo react-datepicker

我正在使用 expo 构建一个 react-native 应用程序,但是,我有一个错误,因此我无法继续构建该应用程序。我什至在错误消息中提到的 node_modules 中查找文件。我正在使用 react-native-gesture-handler 进行屏幕导航。如果我卸载了 react-native-gesture-handler 并删除了导航代码,这会解决我的错误吗?我该如何解决?

应用程序.js

import React, { Component } from 'react';
import { StackNavigator } from 'react-navigation';
import Plan from './screens/Plan';
import Home from './screens/Home';


const AppNavigator = StackNavigator({
  PlanScreen: { screen: Home },
  HomeScreen: { screen: Plan }
});

export default class App extends Component {
  render() {
    return (
      <AppNavigator/>
    )
  }
}

Run Code Online (Sandbox Code Playgroud)

主页.js

import React, { Component } from 'react';
import { View, Text, Button, TextInput } from 'react-native';
import MyDatePicker from './Components/DatePicker.js'
import ImageSelector from './Components/ImageSelector.js'

export class Home extends Component {
   constructor(props) {
    super(props);
    this.state = {text: 'input'}
   }

  render() {
    return (
      <View>
        <Text>Plan Name:</Text> 
        <TextInput style={{height: 40, borderColor: 'black', borderWidth: 0.8}}
       onChangeText={(text) => this.setState({text})}
       value={this.state.text}/>

      <Button style={{ width: 50, alignSelf: "flex-end" }}
      title="Add Plan"
      onPress={() =>
        this.props.navigation.navigate('PlanScreen')}> 
        <MyDatePicker/>
        <ImageSelector/>
        </Button>
        </View>
      )
  }
}
Run Code Online (Sandbox Code Playgroud)

Blu*_*her 9

我刚刚在我的项目中通过执行npm install fbjs.

fbjs utils 具有所需的(和缺失的) "areEqual": "fbjs/lib/areEqual",


hon*_*lop 0

您不能将 a 插入component到 a 中button。消除components

主页.js

    return (
      <View>
        <Text>Plan Name:</Text> 
        <TextInput style={{height: 40, borderColor: 'black', borderWidth: 0.8}}
       onChangeText={(text) => this.setState({text})}
       value={this.state.text}/>

      <Button style={{ width: 50, alignSelf: "flex-end" }}
      title="Add Plan"
      onPress={() =>
        this.props.navigation.navigate('PlanScreen')} /> 
        </View>
      )
Run Code Online (Sandbox Code Playgroud)

或者你可以使用TouchableOpacity

import {
  TouchableOpacity
} from 'react-native'
    <TouchableOpacity onPress={() => this.props.navigation.navigate('PlanScreen')} >
        <MyDatePicker/>
        <ImageSelector/>
    </TouchableOpacity>
Run Code Online (Sandbox Code Playgroud)