react-native-root-modal
v5.0.1
Published
react native modal component
Downloads
4,460
Readme
react-native-root-modal
Features
- Pure javascript solution, easy to install.
- Support both
React element
way andjavascript class
way to invoke, easy to use. - Inherited from
<View />
you can set your own style or animation or anything you can do with View. - ~~redux support~~.
Breaking changes
5.x
From 5.x redux support is not enabled by default. The redux support can be enabled by setting a redux context wrapper.
import { setSiblingWrapper } from 'react-native-root-siblings';
import { Provider } from 'react-redux';
// const store = ... get store;
// Call this before using redux context inside RootSiblings.
setSiblingWrapper((sibling) => <Provider store={store}>{sibling}</Provider>);
Install
npm install react-native-root-modal
Usage
Import library any where inside your code before AppRegistry.registerComponent
is called.
import Modal, { AnimatedModal, ModalManager } from 'react-native-root-modal';
Invoked by React element
way.
....other elements before
<Modal
style={{
top: 0,
right: 0,
bottom: 0,
left: 0,
backgroundColor: 'rgba(0, 0, 0, 0.2)',
transform: [{scale: this.state.scaleAnimation}]
}}
visible={this.state.modalVisible}
>
... You can add anything inside
</Modal>
....other elements after
Just put <Modal />
element anywhere, And it will be front of other elements.
And you can set <Modal />
element`s style or other properties inherited from <View />
element
Or you can invoke it by JavaScript class
way
Import modal Manager class.
import { ModalManager } from 'react-native-root-modal';
Invoke it.
// Create a Modal element on screen.
let modal = new ModalManager(<View style={modal container style}>
...modal contents here.
</View>);
// Update (replace) the modal element which is already existed.
modal.update(<View style={modal container style}>
...other modal contents here.
</View>);
// Destroy it
modal.destroy();
Example
IOS
Android
Notice
Modal element created by this library can`t cover other native
Modal elements,like: Official Modal Element