2.2.6
mac 10.14.1, chrome 70
https://github.com/jkvim/WLM-TypeScript-React-Starter
复现代码
<PullToRefresh
damping={60}
style={{
height: this.state.height,
overflow: 'auto',
}}
indicator={this.state.down ? {} : { deactivate: '上拉可以刷新' }}
direction={this.state.down ? 'down' : 'up'}
refreshing={this.state.refreshing}
onRefresh={this.handleRefresh}
>
如果没有传 getScrollContainer 或者 distanceToRefresh 则使用默认值,ts 类型检查没有报错
如果没有传 getScrollContainer 或者 distanceToRefresh, 都会报错,因为 rmc-pull-to-refresh 定义的类型是必传的
遇到同样的问题。
看来都不用ts写的啊
遇到同样的问题,我暂时用下面来代码先把它们声明,来解决的
getScrollContainer={() => undefined}
distanceToRefresh={25}
在vscode里,command+鼠标顺着点进去,就找到interface了,在rmc-pull-to-refresh/lib/PropsType.d.ts里写的清清楚楚,一目了然。
export interface Indicator {
activate?: React.ReactNode;
deactivate?: React.ReactNode;
release?: React.ReactNode;
finish?: React.ReactNode;
}
export interface PropsType {
getScrollContainer: () => React.ReactNode;
direction: 'down' | 'up';
refreshing?: boolean;
distanceToRefresh: number;
onRefresh: () => void;
indicator: Indicator;
prefixCls?: string;
className?: string;
style?: React.CSSProperties;
damping: number;
}
Most helpful comment
在vscode里,command+鼠标顺着点进去,就找到interface了,在rmc-pull-to-refresh/lib/PropsType.d.ts里写的清清楚楚,一目了然。