mirror of
https://github.com/zhigang1992/react-native.git
synced 2026-03-26 07:04:05 +08:00
[ReactNative] use requireNativeComponent to clean up a bunch of boilerplate
This commit is contained in:
@@ -12,12 +12,11 @@
|
||||
'use strict';
|
||||
|
||||
var React = require('React');
|
||||
var ReactIOSViewAttributes = require('ReactIOSViewAttributes');
|
||||
var StyleSheet = require('StyleSheet');
|
||||
var TabBarItemIOS = require('TabBarItemIOS');
|
||||
var View = require('View');
|
||||
|
||||
var createReactIOSNativeComponentClass = require('createReactIOSNativeComponentClass');
|
||||
var requireNativeComponent = require('requireNativeComponent');
|
||||
|
||||
var TabBarIOS = React.createClass({
|
||||
statics: {
|
||||
@@ -43,10 +42,6 @@ var styles = StyleSheet.create({
|
||||
}
|
||||
});
|
||||
|
||||
var config = {
|
||||
validAttributes: ReactIOSViewAttributes.UIView,
|
||||
uiViewClassName: 'RCTTabBar',
|
||||
};
|
||||
var RCTTabBar = createReactIOSNativeComponentClass(config);
|
||||
var RCTTabBar = requireNativeComponent('RCTTabBar', TabBarIOS);
|
||||
|
||||
module.exports = TabBarIOS;
|
||||
|
||||
@@ -13,13 +13,11 @@
|
||||
|
||||
var Image = require('Image');
|
||||
var React = require('React');
|
||||
var ReactIOSViewAttributes = require('ReactIOSViewAttributes');
|
||||
var StaticContainer = require('StaticContainer.react');
|
||||
var StyleSheet = require('StyleSheet');
|
||||
var View = require('View');
|
||||
|
||||
var createReactIOSNativeComponentClass = require('createReactIOSNativeComponentClass');
|
||||
var merge = require('merge');
|
||||
var requireNativeComponent = require('requireNativeComponent');
|
||||
|
||||
var TabBarItemIOS = React.createClass({
|
||||
propTypes: {
|
||||
@@ -121,7 +119,7 @@ var TabBarItemIOS = React.createClass({
|
||||
selectedIcon={this.props.selectedIcon && this.props.selectedIcon.uri}
|
||||
onPress={this.props.onPress}
|
||||
selected={this.props.selected}
|
||||
badgeValue={badge}
|
||||
badge={badge}
|
||||
title={this.props.title}
|
||||
style={[styles.tab, this.props.style]}>
|
||||
{tabContents}
|
||||
@@ -140,15 +138,6 @@ var styles = StyleSheet.create({
|
||||
}
|
||||
});
|
||||
|
||||
var RCTTabBarItem = createReactIOSNativeComponentClass({
|
||||
validAttributes: merge(ReactIOSViewAttributes.UIView, {
|
||||
title: true,
|
||||
icon: true,
|
||||
selectedIcon: true,
|
||||
selected: true,
|
||||
badgeValue: true,
|
||||
}),
|
||||
uiViewClassName: 'RCTTabBarItem',
|
||||
});
|
||||
var RCTTabBarItem = requireNativeComponent('RCTTabBarItem', TabBarItemIOS);
|
||||
|
||||
module.exports = TabBarItemIOS;
|
||||
|
||||
Reference in New Issue
Block a user