错误:未定义无法在React Native中从'AppNavigator.js'解析模块'./Home'

时间:2019-12-03 12:56:26

标签: react-native import module

我无法解决此问题。为什么会这样呢?还改了进口样     从'./src/screen/Home'导入Home;但是结果是一样的。

给出错误堆栈的屏幕快照链接:

enter image description here

enter image description here

Home.js

import React from 'react';
import { Button, View, Text } from 'react-native';
import { createStackNavigator } from 'react-navigation';
import Profile from './src/screen/Profile';

class Home extends React.Component {
  static navigationOptions = {
    title: 'Home'
   };
render() {
 return (
  <View style={{ 
   flex: 1,
   alignItems:'center',
   justifyContent:'center'
  }}>
<Button title="Go to Profile screen"
    onPress={() => this.props.navigation.navigate('Profile')}
 />
  </View>
);
}
}
export default Home;

Profile.js

import React from 'react';
import { Button, View, Text } from 'react-native';
import { createStackNavigator } from 'react-navigation';
import Home from './src/screen/Home';


class Profile extends React.Component {
  static navigationOptions = {
    title: 'Profile'
   };
 render() {
 return (
  <View style={{ 
   flex: 1,
   alignItems:'center',
   justifyContent:'center'
  }}>
<Button title="Go to Home screen"
    onPress={() => this.props.navigation.navigate('Home')}
   />
  </View>
);
}
}
export default Profile;

2 个答案:

答案 0 :(得分:0)

HomeAppNavigator.js屏幕的路径应为import Home from './src/screen/Home'。这是因为src目录与AppNavigator.js在同一目录中。对于Profile屏幕应该进行相同的更改。

Profile中导入Home.js的路径应为import Profile from './Profile'。这是因为文件与Home.js位于同一目录中。对于在Home内导入Profile.js,应进行相同的更改。

答案 1 :(得分:0)

您正在尝试使用错误的路径导入房屋和配置文件。尝试下面的代码,它将按预期工作。

import Home from './src/screen/Home'
import Profile from './src/screen/Profile'
  

由于两个屏幕都在src目录中,所以这就是为什么   出现错误

当您位于同一目录中时,只需使用./ <<< em> file-name >>来访问文件。并且当您必须访问当前目录之外的文件时,则必须使用../path。因此请分别更改两个文件的导入。

import Profile from './Profile';

import Homefrom './Home';

更多信息,您可以阅读here来了解React Native中静态文件的绝对路径

我希望这行得通...。谢谢:)