Backpack React Native animate height component.
Check the main Readme for a complete installation guide.
import React, { Component } from 'react';
import { View, StyleSheet } from 'react-native';
import BpkText from 'backpack-react-native/bpk-component-text';
import BpkButton from 'backpack-react-native/bpk-component-button';
import { spacingBase } from '@skyscanner/bpk-foundations-react-native/tokens/base.react.native';
import BpkAnimateHeight from 'backpack-react-native/bpk-component-animate-height';
const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
padding: spacingBase,
},
animateHeight: {
marginBottom: spacingBase,
}
});
export default class App extends Component {
constructor() {
super();
this.state = {
expanded: false,
};
}
onToggle = () => {
this.setState({ expanded: !this.state.expanded });
}
render() {
return (
<View style={styles.container}>
<BpkAnimateHeight
expanded={this.state.expanded}
style={styles.animateHeight}
>
<BpkText>
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus
et magnis dis parturient montes, nascetur ridiculus mus.
</BpkText>
</BpkAnimateHeight>
<BpkButton title="Toggle" onPress={this.onToggle} />
</View>
);
}
}
Property | PropType | Required | Default Value |
---|---|---|---|
children | Node | Yes | - |
expanded | bool | Yes | - |
animationDuration | number | No | 400 |
expandDelay | number | No | 0 |
collapseDelay | number | No | 0 |