2017-11-26 2 views
0

Ich versuche, eine mobile Web-App mit react und framework7 zu erstellen, aber ich bin anscheinend nicht in der Lage, herauszufinden, wie das Routing für framework7 funktioniert.Framework7 Reagieren-Routing funktioniert nicht

Unten können Sie die Initialisierung des pagecontainer mit der framework7 App sehen:

export default class AbstractPage extends Component { 
constructor(props) { 
    super(props); 

    this.state = { 
     initialized: false 
    }; 

    const logger = createLogger(); 
    const reducer = combineReducers({ ...props.reducer, routing: routerReducer }); 
    this.history = createBrowserHistory(); 
    const historyMiddleware = routerMiddleware(this.history); 
    this.store = createStore(reducer, applyMiddleware(promise(), historyMiddleware, logger, thunkMiddleware)); 

    this.routes: [ 
     {path: '/', component: WallContainer}, 
     {path: '/create', component: CreateContainer}, 
    ]; 
} 

render() { 
    return (
     <Provider store={this.store}> 
      <Router history={this.history}> 
       <Framework7App themeType="material" routes={this.routes}> 
       <Statusbar /> 
       <LeftPanel /> 
       <Views navbarThrough> 
        <View main url="/" dynamicNavbar> 
         <Pages> 
          <WallContainer /> 
         </Pages> 
        </View> 
       </Views> 
      </Framework7App> 
      </Router> 
     </Provider> 
    ); 
} 
} 

Mit der Konfiguration von oben, habe ich immer die WallContainer gemacht bekommen. Wenn ich auf den Link klicke, um auf die Seite "Erstellen" zu gelangen, ändert sich die URL in "localhost: 3000/create", aber die Seite ändert sich nicht und der Wallcontainer ist weiterhin sichtbar. Weiß jemand, was ich hier falsch mache? Vielen Dank!

Antwort

0

Es stellte sich heraus, dass ich vergessen habe, meinen Framework7App-Kontext zu meinen Klassen hinzuzufügen.

Wenn Sie diesen Kontext nicht hinzufügen, erhalten Sie keine Warnung oder Ausnahme, aber das Routing funktioniert nicht.