Skip to content

Commit 2c00a3e

Browse files
committed
Add the renderHeader property, and the HeaderComponent property is deprecated
1 parent a574768 commit 2c00a3e

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

SmartRefreshControl.js

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import {ViewPropTypes} from './Util'
1414
import DefaultHeader from "./DefaultHeader";
1515
import PropTypes from 'prop-types';
1616
import processColor from 'react-native/Libraries/StyleSheet/processColor';
17+
import deprecatedPropType from 'react-native/Libraries/Utilities/deprecatedPropType'
1718

1819
const SPModule =Platform.OS === 'android' ? NativeModules.SpinnerStyleModule : {};
1920

@@ -64,7 +65,10 @@ class SmartRefreshControl extends Component {
6465
* @return {*}
6566
*/
6667
renderHeader=()=>{
67-
const {HeaderComponent}=this.props;
68+
const {HeaderComponent,renderHeader}=this.props;
69+
if(renderHeader){
70+
return React.isValidElement(renderHeader)?renderHeader:renderHeader();
71+
}
6872
if(HeaderComponent){
6973
return HeaderComponent;
7074
}
@@ -141,7 +145,11 @@ SmartRefreshControl.propTypes = {
141145
onReleaseToRefresh:PropTypes.func,
142146
onHeaderReleased:PropTypes.func,
143147
enableRefresh: PropTypes.bool,//是否启用下拉刷新功能
144-
HeaderComponent:PropTypes.object,
148+
HeaderComponent:deprecatedPropType(PropTypes.object,'Use the `renderHeader` prop instead.'),
149+
renderHeader:PropTypes.oneOfType([
150+
PropTypes.func,
151+
PropTypes.element,
152+
]),
145153
headerHeight:PropTypes.number,
146154
overScrollBounce:PropTypes.bool,//是否使用越界回弹
147155
overScrollDrag:PropTypes.bool,//是否使用越界拖动,类似IOS样式

0 commit comments

Comments
 (0)