所以让我说我有这个
class ExampleOne extends ExampleTwo
并且在ExampleTwo中有这个
return (
<div className="test">
<MyComponent exampleLabel="ExampleTwo">
是否可以修改MyComponent的exampleLabel为ExampleOne类说“ExampleOne”?
答案 0 :(得分:2)
有两种情况
1)如果您可以修改ExampleTwo,请使用react props
class ExampleTwo extends React.Component {
render() {
return <div>
<MyComponent exampleLabel={this.props.exampleLabel || 'ExampleTwo'}/>
</div>;
}
}
// And render as
<ExampleOne exampleLabel="ExampleOne"/>
2)如果你不能修改ExampleTwo,那么你可以覆盖render
函数
class ExampleOne extends ExampleTwo {
render() {
return <div>
<MyComponent exampleLabel="ExampleOne"/>
</div>;
}
}
答案 1 :(得分:1)
是的,扩展ExampleOne很好,你只需将它作为一个道具传递:
在ExampleTwo中:
return (
<div className="test">
<MyComponent exampleLabel="ExampleOne">