Shoutem - 修改扩展名

时间:2017-07-09 21:23:50

标签: shoutem

他,我试图修改shoutem.places扩展名。我的自定义屏幕如下所示:

import { screens } from 'shoutem.places';

export default class FixedMediumPlaceDetails extends 
screens.MediumPlaceDetails {    
  render() {    
    const { place } = this.props;
    const { location = {} } = place;
    return (
      <Screen>
        <NavigationBar />
        <ScrollView>
          {this.renderLeadImage(place)}
        </ScrollView>
      </Screen>
    );
  }
}

我只是重写了render()方法,在这个方法中我想从超类中调用renderLeadImage()方法。

通过这种实现,我得到:this.renderLeadImage() is not a function。那么我如何正确地继承该类并调用一个超类&#39;方法?无论如何,继承是这里的首选方式吗? Facebook推荐组合而不是继承。

1 个答案:

答案 0 :(得分:0)

screens.MediumPlaceDetails不是一个React Component类,而是一个reduxshoutem.theme装饰类,这就是为什么当你扩展时你无法访问任何一个renderLeadImage()的方法。

因此,您必须更改import

import { MediumPlaceDetails } from 'shoutem.places/screens/MediumPlaceDetails';

编辑: 修复了复制粘贴错误。