Undefined не является функцией.React-родной Redux-Saga - PullRequest
0 голосов
/ 29 января 2019

Когда я запускаю свое приложение, я получаю эту ошибку.enter image description here

Я хочу перейти к следующему экрану при нажатии кнопки.Ниже мой файл LoginView.js.Я не знаю, в чем причина.Я проверил много потоков, но все еще не получил правильный ответ.

import React, { Component } from 'react';
import { View, TextInput, TouchableOpacity, Image, Text, Keyboard } from 'react-native';
import PropTypes from 'prop-types';
import styles from './styles';




class LoginView extends Component {

    constructor(props) {
        super(props);
        this.state = { mobilenumber: null, devicetoken: "ef1b82a0d41dad60" }
    }

    onPress = () => {
        Keyboard.dismiss();
        console.log("&&&", this.state.mobilenumber, this.state.devicetoken);
        this.props.onLogin(this.state.mobilenumber, this.state.devicetoken);
    }

    render() {

        return (
            <View style={styles.container}>
                <Image
                    style={styles.image}
                    source={require('./logo.png')}
                />

                <TextInput
                    style={styles.input}
                    placeholder='Enter your mobile number'
                    onChangeText={value => this.setState({ mobilenumber: value })}
                />

                <TouchableOpacity onPress={this.onPress}>
                    <View style={styles.button}>
                        <Text style={styles.buttonText}>Login</Text>
                    </View>
                </TouchableOpacity>
            </View>
        );
    }
}

LoginView.propTypes = {
    onLogin: PropTypes.func
};


export default LoginView;

Ниже приведен фрагмент кода в моем файле LoginContainer.js, куда я отправляю переданные значения.

    class LoginContainer extends Component {
    constructor(props) {
        super(props);
    }

    render() {
        return <LoginView {...this.props} />;
    }
}

function mapStateToProps() {
    return {};
}
function mapDispatchToProps(dispatch) {
    return {
        onLogin: (mobilenumber, devicetoken) => dispatch(loginActions.requestLogin(mobilenumber, devicetoken))
    };
}
export default connect(
    mapStateToProps,
    mapDispatchToProps
)(LoginContainer);
...