React native:无法导入和使用外部软件包

我正在尝试使用react-native-tabbar-navigator软件包。 我做了npm install react-native-tabbar-navigator --save在我的项目目录来安装软件包。 在我的代码中,我有以下导入行来使用该包。

 import React, { Component } from 'react'; import {TabBarNavigator} from 'react-native-tabbar-navigator' import MainTab from './MainTab'; import { AppRegistry, StyleSheet, Text, View, } from 'react-native'; 

然而,在我的android模拟器上运行这个给我以下错误:

似乎你正试图从react-native包中访问“ReactNative.Component”。 也许你打算从“react”包中访问“React.Component”?

如果我删除TabBarNavigator的导入行,错误消失。 为什么发生这种情况?

我正在使用tabbarnavigator的0.3.0版本和react-native的0.31.0-rc.0版本

那个图书馆已经过时了,直到他们发布一个新的版本才会有效。

正如你在这里看到的, TabBarNavigator是从'react-native'导入的Component ,这在react-native v0.26 +上是不支持的。

你可以手动改变你的本地包( node_modules ),

更换

 var React = require('react-native'); var { Component, StyleSheet, Text, View, TabBarIOS } = React; 

对此

 import { StyleSheet, Text, View, TabBarIOS } from 'react-native'; import {Component} from 'react' 

MainTabBar.jsMainNavigator.js中

无论如何,你会更容易安装更新的库,像react-native-tab-navigator 。