Dva: Il n'y a pas de connexion pour le composant parent le plus extérieur, les composants de connexion et enfant, et il n'y a pas de modèle ou de dispath dans l'enfant

Créé le 19 janv. 2017  ·  4Commentaires  ·  Source: dvajs/dva

Ma scène est comme ça

J'ai conçu router.jsx comme ça

            <Router history={ history }>

                <Route path="/" getComponents={App}>
                    <IndexRedirect to="projects" />
                    <Route path="projects" getComponents={Projects}></Route>
                    <Route path="dashboard" getComponents={Dashboard}></Route>
                </Route>
                <Route path="*">
                </Route>
            </Router>

App.jsx avec le chemin le plus extérieur = "/" est conçu comme ceci

import React, {PropTypes, Component} from 'react';
import {connect} from 'dva';
import {Link} from 'dva/router';
import Header from 'components/Common/ProjectManagementNav/ProjectManagementNav'

const App = (props) => {
    console.log("props",props);
    return  (
        <div>
            <Header />
            {props.children}
        </div>
    )
}

function mapStateToProps({ management }) {
    return { management };
}

export default connect(mapStateToProps)(App);

On peut voir que l'application de mon composant parent a été connectée

Et en dessous de mon sous-composant Projets (chemin = "projets") je ne me connecte pas

import React from 'react';
import {connect} from 'dva';
import ProjectsContent from 'components/projects/projectsContent';
const Projects = (props) => {
    console.log(props);
    return (
        <ProjectsContent/>
    );

};

export default Projects;
  • Cela empêche les sous-composants d'obtenir le dispath
  • Existe-t-il un moyen pour le composant enfant d'obtenir la déconnexion directement du composant connecté du parent sans se connecter?
  • Parce que je pense qu'après le rendu du composant parent, le composant enfant suivra également le rendu. Tant que le composant enfant peut obtenir le dispath, il peut changer l'état par dispath pour déclencher le rendu du composant parent.
  • Sinon, dois-je me connecter aux fichiers sous chaque route?
question

Commentaire le plus utile

Difficile à lire, veuillez vous référer aux documents suivants pour ajuster le format:

Tous les 4 commentaires

Difficile à lire, veuillez vous référer aux documents suivants pour ajuster le format:

Trié

Ma méthode consiste à utiliser la répartition ou tous les composants qui font référence à l'état du modèle pour se connecter. Bien sûr, vous pouvez également transmettre la répartition, ou encapsuler l'action de répartition dans une fonction, puis transmettre la fonction.

Ma méthode consiste à utiliser la répartition ou tous les composants qui font référence à l'état du modèle pour se connecter. Bien sûr, vous pouvez également transmettre la répartition, ou encapsuler l'action de répartition dans une fonction, puis transmettre la fonction.

Si vous les connectez tous, les sous-composants ne basculeront pas normalement lorsque la langue internationale sera changée, et vous devrez utiliser window.location.reload () pour actualiser la page entière. Mais si le composant enfant n'est pas connecté, il peut être commuté normalement.Existe-t-il un moyen de ne pas actualiser la page?

Cette page vous a été utile?
0 / 5 - 0 notes