反应原生:
如何创建扩展另一个组件的组件,而不是从react
扩展基本组件所以而不是:
export default class XXX extends Component {
我需要创建一个类Base
export default class XXX extends Base {
哪里
export default class Base extends Component {
整个想法是创建一个Base
组件,将其用作所有其他组件的基类。
答案 0 :(得分:0)
你可以这样做,但它有一些限制。例如,您无法覆盖父方法。您可以使用props
,将therm发送到父组件并在其中调用它们。您还可以使用Higher-Order Components,将逻辑添加到其中,并将渲染方法添加到每个扩展组件中。
答案 1 :(得分:0)
是的,您可以这样做,就像您的问题中所述。
然而,React社区倾向于组合而不是继承:https://facebook.github.io/react/docs/composition-vs-inheritance.html
答案 2 :(得分:0)
是的,只是您必须创建如下所示的基本组件:-
import React, {Component} from 'react';
export default class BaseReact extends React.Component{
constructor(props){
super(props)
}
navigate=(name)=>{
const {navigate} = this.props.navigation;
navigate(name)
}
}
将该类导入.js文件中:-
import BaseReact from '/*/*/*/*/*/*/screen/BaseReact';
export default class Splash extends BaseReact{
constructor(props){
super(props)
}
}
可能会帮助您实现目标。
谢谢。