2017-10-16 25 views
0

嘗試使用react-native-navigation時,我一直跑到undefined is not an object (evaluating 'RCCManager.setRootController')在世博會中使用react-native-navigation的setRootController錯誤

我試圖效仿https://github.com/junedomingo/movieapp,但當它嘗試在世博會應用程序中加載項目時遇到此問題。

我修改通過世博會產生的,看起來像這樣我的App.js:

import HomeScreen from './screens/HomeScreen' 

Navigation.registerComponent('screens.HomeScreen',() => HomeScreen) 

class App extends React.Component { 
    constructor(props) { 
    super(props) 
    this.startApp() 
    } 
    startApp() { 
    Navigation.startTabBasedApp({ 
     tabs: [ 
     { 
     label: 'One', 
     screen: 'screens.HomeScreen', 
     title: 'Screen One' 
     }, 
     ] 
    }) 
    } 
} 

const app = new App() 

這是一個有點煮了,但我認爲這些都是必不可少位。我覺得我不會像世博會期待的那樣,把事情從世博會交給世博會。

任何想法如何在博覽會上運行?如果有一個我可以玩的例子回購,那會很棒。我相信我可以在世博會之外工作,所以香草草的例子可能沒有多大幫助。

+1

我相信EXPO不支持react-native-navigation。它具有本地依賴性。 – bennygenel

+0

我認爲你的意思是使用反應導航。 –

+0

事實上,就像@ EdgarAroutiounian所說的,爲了使用Wix的react-native-navigation,您需要修改android和iOS本機代碼。你知道埃德加是否有辦法在博覽會內生成這樣的文件夾而不會失去優勢? –

回答

1

因爲react-native-navigation具有本地依賴性,並且需要您添加自定義本機代碼,所以不能在包中使用Expo。

一個選項是detach您的項目並使用這樣的包。這有失去一些博覽會財產的副作用。

另一種選擇是(如果您不是太深的項目)創建一個新的應用程序與react-native-cli並將您的代碼移動到該項目。這具有不能使用expo api的副作用。

第三種選擇是使用不依賴本地代碼的導航包。一些最受歡迎的選項是react-navigationreact-native-router-flux