mirror of
https://github.com/zhigang1992/react-native.git
synced 2026-04-28 12:15:37 +08:00
Updates from Mon 6 Apr
- [ReactNative] Revert D1965911 | Christopher Chedeau - [ReactNative] Remove experimental Portal only needed for android right now. | Spencer Ahrens - [ReactNative] rename Animation to AnimationExperimental with warning docs | Spencer Ahrens - navigator.getCurrentRoutes() | Eric Vicenti - Fixing jsdoc parsing of functions that are defined over multiple lines (Fixes #410) | Christopher Chedeau - Added constraint of child type to touchablewithoutfeedback | Christopher Chedeau - [react-packager] Deprecate global image namespace in favor of CommonJS resolution | Amjad Masad - [react-packager] Don't cache rejected promise | Amjad Masad - [ReactNative] Start Navigator gesture config, disable gesture in AdsManager | Eric Vicenti - [Flow] Clean react-native-github for Flow v0.8.0 | Gabe Levi - add maximumValue and minimumValue as valid attributes for native Slider | Christopher Chedeau - react-packager: Add ES6 import statement support to DependencyGraph. | Amjad Masad - Remove false annotation | Christopher Chedeau - [madman] prevent pulling the content down inconsistently when the keyboard shows up | Kevin Gozali - add @flow back to View.js | Basil Hosmer - [ReactNative] Turn of lint warning for constant conditions | Eric Vicenti - [UIExplorer] Fixed 'Push View Example' in NavigatorIOS example | Christopher Chedeau - SliderIOS.js comments - grammar correction | Christopher Chedeau
This commit is contained in:
@@ -1,70 +0,0 @@
|
||||
/**
|
||||
* Copyright 2004-present Facebook. All Rights Reserved.
|
||||
*
|
||||
* @providesModule Portal
|
||||
* @flow
|
||||
*/
|
||||
'use strict';
|
||||
|
||||
var React = require('React');
|
||||
var StyleSheet = require('StyleSheet');
|
||||
var View = require('View');
|
||||
|
||||
var _portalRef: any;
|
||||
|
||||
/*
|
||||
* A container that renders all the modals on top of everything else in the application.
|
||||
*
|
||||
* Portal makes it possible for application code to pass modal views all the way up to
|
||||
* the root element created in `renderApplication`.
|
||||
*
|
||||
* Never use `<Portal>` in your code. There is only one Portal instance rendered
|
||||
* by the top-level `renderApplication`.
|
||||
*/
|
||||
var Portal = React.createClass({
|
||||
statics: {
|
||||
showModal: function(component) {
|
||||
if (!_portalRef) {
|
||||
console.error('Calling showModal but no Portal has been rendered');
|
||||
return;
|
||||
}
|
||||
_portalRef.setState({modal: component});
|
||||
},
|
||||
|
||||
closeModal: function() {
|
||||
if (!_portalRef) {
|
||||
console.error('Calling closeModal but no Portal has been rendered');
|
||||
return;
|
||||
}
|
||||
_portalRef.setState({modal: null});
|
||||
},
|
||||
},
|
||||
|
||||
getInitialState: function() {
|
||||
return {modal: (null: any)};
|
||||
},
|
||||
|
||||
render: function() {
|
||||
_portalRef = this;
|
||||
if (!this.state.modal) {
|
||||
return <View />;
|
||||
}
|
||||
return (
|
||||
<View style={styles.modalsContainer}>
|
||||
{this.state.modal}
|
||||
</View>
|
||||
);
|
||||
}
|
||||
});
|
||||
|
||||
var styles = StyleSheet.create({
|
||||
modalsContainer: {
|
||||
position: 'absolute',
|
||||
left: 0,
|
||||
top: 0,
|
||||
right: 0,
|
||||
bottom: 0,
|
||||
},
|
||||
});
|
||||
|
||||
module.exports = Portal;
|
||||
Reference in New Issue
Block a user