React-Native,Redux,不变违规,请查看我的代码

时间:2018-01-28 09:44:07

标签: reactjs react-native react-redux react-navigation



When multiline




上面的代码是我的登录屏幕组件我已导出我的登录屏幕,请检查。我的模拟器抛出一个错误,说不变违规说我没有导出我的组件。我有一个loginScreen组件,这是我想要导出的。我正在导入这个 我的navigationStack中的组件用于路由和导航。

错误的屏幕截图 enter image description here

3 个答案:

答案 0 :(得分:0)

请勿使用default导出组件。只需使用export Loginexport const Login = connect(null, mapDispatchToProps)(LoginScreen);

然后,在StackNavigator中,导入它:import { Login } from 'src/components/Login

这可以解决导入的comp实例为undefined的问题。

答案 1 :(得分:0)

如果在导出时使用“默认”,即

export default Login;

然后,您应将其导入为:

import Login from 'src/components/Login'

,如果您未使用“默认”,请尝试以类似方式导入:

import {Login} from 'src/components/Login'

答案 2 :(得分:0)

很可能Icon导入是错误的,最终导致是undefined,从而触发了错误。

假设您正在使用以下软件包:https://github.com/oblador/react-native-vector-icons,则正确的导入应为:

import Icon from 'react-native-vector-icons/FontAwesome';

(请注意最后添加了/FontAwesome

作为一般的调试方法,每当收到此错误时,请在render()内部(甚至在类外部)对您用作标记的所有变量进行console.log。通常其中一个是undefined,而您已找到了罪魁祸首。确保导入有效并且产生Component或非空string,然后您就可以开始了:)