如何在反应本机中声明模型类并通过使用反应导航在第二个屏幕中传递整个模型类

Vis*_*a ツ 6 react-native

声明像java这样的模型类的正确方法以及如何将其传递到react native中的第二个屏幕?

export default class UserModel {

    stateName;
    username;
    email;
    mobile;
    gender;
    address;

    constructor() {}

    setStateName(stateName) {
        this.stateName = stateName;
    }
    setUserName(username) {
        this.username = username;
    }

    setEmail(email) {
        this.email = email;
    }

    setMobile(mobile) {
        this.mobile = mobile;
    }

    setGender(gender) {
        this.gender = gender;
    }

    setAddress(address) {
        this.address = address;
    }
}
Run Code Online (Sandbox Code Playgroud)

Vis*_*a ツ 5

第1步:制作UserModel.js

class UserModel {

    constructor() {
        stateName,
        username,
        email,
        mobile,
        gender,
        address;
    }

}
Run Code Online (Sandbox Code Playgroud)

注意:如果您不想全局设置,请不要导出它。

第 2 步:Screen1.js - 设置 UserModel 并从 screen1 传递。

_handlePress = async () => {

        UserModel.username = "Vishal Patoliya"

        this.props.navigation.navigate('UserList',{userData: UserModel});

    }
Run Code Online (Sandbox Code Playgroud)

步骤 3:在另一个屏幕接收模型类。

render() {
        console.log(TAG, "render() Called.")

        const UserModel = this.props.navigation.getParam('userData');

        console.log("Username", UserModel.username)
}
Run Code Online (Sandbox Code Playgroud)

输出 :

01-16 17:30:32.085  4541  5638 I ReactNativeJS: 'Username', 'Vishal Patoliya'
Run Code Online (Sandbox Code Playgroud)