2016-07-06 19 views
3

Ich versuche Requisiten von einer Komponente zu einem anderen über React-Router zu übergeben.Wenn ich versuche, diese Requisiten von Kind-Komponente zu bekommen, bekam ich diese Nachricht TypeError: this.props.params.appState is undefined. Hier ist mein Code:Reagieren Requisiten ist undefined

Tracks.jsx:

import { observable } from 'mobx'; 


export default class Tracks { 
    @observable tracks = []; 

} 

app.jsx:

....... 
import Tracks from './store/Tracks.jsx'; 

...... 
const appState = new Tracks(); 

ReactDOM.render(
    <Router history={browserHistory} > 
     <Route path="/" component={Login} /> 
     <Route path="/dashboard" onEnter={authRequired} component={Main}> 
      <Route path="album/create" component={AlbumCreate} /> 
      <Route path="album/:id" component={Album} appState={appState}/> 
      <Route path="album/:id/upload" component={Upload} /> 
     </Route> 
    </Router>, 
    document.getElementById('app') 
); 

Album.jsx:

..... 
@observer 
export default class Album extends React.Component { 

    constructor(props) { 
     super(props); 
    } 
componentDidMount() { 
     console.log(this.props.params.appState.tracks); 
    } 

..... 
+0

Könnten Sie überprüfen, was enthält 'this.props'? –

+0

Wie ich sehen kann, sagt der Fehler '' TypeError: this.props.params.appState ist undefined'' so scheint es, dass '' appState'' '' undefined'' ist und nicht '' this.props''. – Kamil

+0

@MarioAlexandroSantini 'Objekt {Geschichte: Objekt, Ort: Objekt, Parameter: Objekt, Route: Objekt, RouteParame: Objekt, Routen: Array [2], Kinder: null, 2 mehr ...}' – pyprism

Antwort

6

Änderung dieser

this.props.params.appState 

zu

this.props.route.appState 

Params ist dynamisch Segmente der URL, für Requisiten Sie brauchen Route

Verwandte Themen