Fix warning in FlatListExample
Summary: Stop rendering outer ScrollView. Reviewed By: PeteTheHeat Differential Revision: D16217349 fbshipit-source-id: 2ffcd7f35f5dd9020ca8f234f05a5d5393552d96
This commit is contained in:
Родитель
7d096803d1
Коммит
7104c1f3ce
|
@ -15,6 +15,8 @@ const RNTesterBlock = require('./RNTesterBlock');
|
|||
const RNTesterExampleFilter = require('./RNTesterExampleFilter');
|
||||
const RNTesterPage = require('./RNTesterPage');
|
||||
|
||||
const invariant = require('invariant');
|
||||
|
||||
class RNTesterExampleContainer extends React.Component {
|
||||
renderExample(example, i) {
|
||||
// Filter platform-specific examples
|
||||
|
@ -34,10 +36,18 @@ class RNTesterExampleContainer extends React.Component {
|
|||
}
|
||||
|
||||
render(): React.Element<any> {
|
||||
if (this.props.module.examples.length === 1) {
|
||||
const {module} = this.props;
|
||||
if (module.simpleExampleContainer) {
|
||||
invariant(
|
||||
module.examples.length === 1,
|
||||
'If noExampleContainer is specified, only one example is allowed',
|
||||
);
|
||||
return module.examples[0].render();
|
||||
}
|
||||
if (module.examples.length === 1) {
|
||||
return (
|
||||
<RNTesterPage title={this.props.title}>
|
||||
{this.renderExample(this.props.module.examples[0])}
|
||||
{this.renderExample(module.examples[0])}
|
||||
</RNTesterPage>
|
||||
);
|
||||
}
|
||||
|
@ -46,7 +56,7 @@ class RNTesterExampleContainer extends React.Component {
|
|||
|
||||
const sections = [
|
||||
{
|
||||
data: this.props.module.examples,
|
||||
data: module.examples,
|
||||
title: 'EXAMPLES',
|
||||
key: 'e',
|
||||
},
|
||||
|
|
|
@ -99,7 +99,10 @@ class FlatListExample extends React.PureComponent<Props, State> {
|
|||
const filteredData = this.state.data.filter(filter);
|
||||
const flatListItemRendererProps = this._renderItemComponent();
|
||||
return (
|
||||
<RNTesterPage noSpacer={true} noScroll={true}>
|
||||
<RNTesterPage
|
||||
noSpacer={true}
|
||||
noScroll={true}
|
||||
title="Simple list of items">
|
||||
<View style={styles.container}>
|
||||
<View style={styles.searchRow}>
|
||||
<View style={styles.options}>
|
||||
|
@ -245,6 +248,7 @@ const styles = StyleSheet.create({
|
|||
|
||||
exports.title = '<FlatList>';
|
||||
exports.description = 'Performant, scrollable list of data.';
|
||||
exports.simpleExampleContainer = true;
|
||||
exports.examples = [
|
||||
{
|
||||
title: 'Simple list of items',
|
||||
|
|
|
@ -37,6 +37,7 @@ export type RNTesterExampleModule = $ReadOnly<{|
|
|||
displayName?: ?string,
|
||||
framework?: string,
|
||||
examples: Array<RNTesterExampleModuleItem>,
|
||||
simpleExampleContainer?: ?boolean,
|
||||
|}>;
|
||||
|
||||
export type RNTesterExample = $ReadOnly<{|
|
||||
|
|
Загрузка…
Ссылка в новой задаче