React Native - 将类作为props传递给组件

时间:2017-05-05 10:57:51

标签: reactjs react-native

是否可以在React Native中将类作为props传递给自定义组件,然后将该类的方法调用到组件中?

这是我所谓的代码。

import MyAwesomeClass from './model.js';
...
...
...
<MyComponent model=myAwesomeClass /> 

model.js

export default class MyAwesomeClass {
    var name;
    var surname;
    function getName(){
        return name;
    }
    function getSurname(){
        return surname;
    }
}

然后调用类方法:

MyComponent.js

export default class myComponent extends Component {
    ...
    ...
    render(){
        return (
            <View>
                <Text>{this.props.getName()}></Text>
                <Text>{this.props.getSurname()}></Text>
            </View>
        );
    }
}

我知道我可以直接namesurname作为道具,并使用myComponentthis.props.name将其转入this.props.surname,但我想通过整个类而不是sigle属性。 在React Native中这可能吗?如果没有,实现这样的事情的最佳做法是什么?提前致谢

1 个答案:

答案 0 :(得分:1)

绝对可能。清理班级,

export default class MyAwesomeClass {
    constructor(name, surname) {
        this.name = name;
        this.surname = surname;
    }
   // ... any methods here
}

然后确保实例化该类,例如

const bob = new MyAwesomeClass('Bob', 'the Builder');

现在,您可以直接访问namesurname

console.log(bob.name)
>>> 'Bob'