React-Native: модуль AppRegistry не является зарегистрированным вызываемым модулем

В настоящее время я пытаюсь запустить ES6 response-native-webpack-сервер, работающий на эмуляторе Android. Разница в том, что я обновил свой build.grade package.json и build.grade чтобы использовать реакцию 0.18.0 , и я получаю эту ошибку при загрузке. Насколько мне известно, AppRegistry импортируется правильно. Даже если я должен был прокомментировать код, эта ошибка все еще возникает. Это действительно работает на iOS без проблем.

Что я делаю не так?

EDIT: после тестирования других шаблонов, поддерживающих 0.18.0, я все еще сталкиваюсь с той же проблемой.

Введите описание изображения здесь

Solutions Collecting From Web of "React-Native: модуль AppRegistry не является зарегистрированным вызываемым модулем"

Я только что 0.18.1 до реагирования 0.18.1 сегодня, когда у него были проблемы с зависимостями одноранговой сети с 0.19.0-rc до версии версии 0.19.0-rc .

Вернемся к вашему вопросу, что я сделал

  1. cd android
  2. sudo ./gradlew clean

Затем вернитесь в рабочий каталог и запустите react-native run-android

Вы должны перезапустить свой npm тоже после этого обновления.

Надеюсь, что это работает для вас.

У меня была такая же проблема на ios и причина для меня, что мой index.io.js был неправильным (потому что я копирую один из примеров без просмотра его содержимого), он заканчивался декларацией экспорта модуля

 exports.title = ... exports.description = ... module.exports = MyRootComponent; 

Вместо ожидаемого

 AppRegistry.registerComponent('MyAppName', () => MyRootComponent); 

У вас может быть такая же проблема на android с index.android.js, я думаю.

Если вы используете некоторые из примеров, они могут не работать

Вот моя версия для просмотра прокрутки

 /** * Sample React Native App * https://github.com/facebook/react-native */ import React, { AppRegistry, Component, StyleSheet, Text, View, ScrollView, TouchableOpacity, Image } from 'react-native'; class AwesomeProject extends Component { render() { return ( <View> <ScrollView ref={(scrollView) => { _scrollView = scrollView; }} automaticallyAdjustContentInsets={false} onScroll={() => { console.log('onScroll!'); }} scrollEventThrottle={200} style={styles.scrollView}> {THUMBS.map(createThumbRow)} </ScrollView> <TouchableOpacity style={styles.button} onPress={() => { _scrollView.scrollTo({y: 0}); }}> <Text>Scroll to top</Text> </TouchableOpacity> </View> ); } } var Thumb = React.createClass({ shouldComponentUpdate: function(nextProps, nextState) { return false; }, render: function() { return ( <View style={styles.button}> <Image style={styles.img} source={{uri:this.props.uri}} /> </View> ); } }); var THUMBS = [ 'http://loremflickr.com/320/240?random='+Math.round(Math.random()*10000) + 1, 'http://loremflickr.com/320/240?random='+Math.round(Math.random()*10000) + 1, 'http://loremflickr.com/320/240?random='+Math.round(Math.random()*10000) + 1 ]; THUMBS = THUMBS.concat(THUMBS); // double length of THUMBS var createThumbRow = (uri, i) => <Thumb key={i} uri={uri} />; var styles = StyleSheet.create({ scrollView: { backgroundColor: '#6A85B1', height: 600, }, horizontalScrollView: { height: 120, }, containerPage: { height: 50, width: 50, backgroundColor: '#527FE4', padding: 5, }, text: { fontSize: 20, color: '#888888', left: 80, top: 20, height: 40, }, button: { margin: 7, padding: 5, alignItems: 'center', backgroundColor: '#eaeaea', borderRadius: 3, }, buttonContents: { flexDirection: 'row', width: 64, height: 64, }, img: { width: 321, height: 200, } }); AppRegistry.registerComponent('AwesomeProject', () => AwesomeProject); 

Я не знаю почему, но когда я перемещаю AppRegistry.registerComponent из файла index.js, который включен в index.android.js, чтобы напрямую находиться внутри index.android.js, он работает.