Dva: Lors d'un chargement dynamique, le fichier .js fractionné est introuvable lorsque la route a des chemins à plusieurs niveaux

Créé le 23 sept. 2016  ·  13Commentaires  ·  Source: dvajs/dva

L'exemple de tableau de bord utilisateur est modifié pour uniquement router.js selon l'exemple de charge dynamique, comme suit:
image
Lorsque l'historique utilise browserHistory, s'il est acheminé vers le chemin / demo / users, il demandera 127.0.0.1:8989/demo/0.js, et une erreur 404 apparaîtra.
image
Si l'historique utilise hashHistory, il n'y a pas de problème, la requête est 127.0.0.1:8989/0.js

S'il est directement acheminé vers / users, il n'y a aucun problème qu'il s'agisse de hashHistory ou de browserHistory.

faq question

Tous les 13 commentaires

Si le mode de chargement dynamique n'est pas utilisé directement, il n'y a pas de problème de routage vers plusieurs niveaux
image

Essayez de faire correspondre le publicPath de webpack avec / .

image

Après avoir ajouté publicPath, la route / index.js du chemin racine sera directement 404.

@yinlsea Comment votre vsc soutient-il le projet react? J'ai utilisé la valeur par défaut et essayé d'installer quelques extensions, mais lorsque j'ai rencontré une instruction au format {...foo,...bar} , le formatage automatique était paralysé. Je ne veux pas vraiment utiliser d'autres éditeurs, il n'y a aucun moyen d'avoir seulement un format manuel.

@xjdata ne peut pas reconnaître le symbole de structure même

Utilisez idea ou webstorm, la mise à jour officielle est très rapide et le support est également très complet.

@ohmyauthentic木 有 ~ Pas moyen de changer le webstorm ~

Résolu, utilisez browserHistory, lors du chargement à la demande, vous devez écrire comme ceci:
import {useRouterHistory} depuis'dva / router ';
import {createHistory} de "histoire";

dva ({
historique: useRouterHistory (createHistory) ({basename: 'ROOTPATH'}),
});

Résolu, utilisez browserHistory, lors du chargement à la demande, vous devez écrire comme ceci:
import {useRouterHistory} depuis'dva / router ';
import {createHistory} de "histoire";

dva ({
historique: useRouterHistory (createHistory) ({basename: 'ROOTPATH'}),
});

Résolu, utilisez browserHistory, lors du chargement à la demande, vous devez écrire comme ceci:
import {useRouterHistory} depuis'dva / router ';
import {createHistory} de "histoire";

dva ({
historique: useRouterHistory (createHistory) ({basename: 'ROOTPATH'}),
});

Bonjour, j'ai résolu le problème des sous-répertoires à votre manière, mais maintenant avec des chemins à plusieurs niveaux, entrez http: // localhost : 8989 / indexpage dans le chemin de premier niveau et actualisez par f5, mais http: // localhost : 8989 / indexpage / test1 L'appui sur f5 ne fonctionnera pas, le rapport ne trouve pas le fichier .js

@yinlsea À quoi se réfère ROOTPATH? Je peux utiliser Link to = '/ xx / xx' pour entrer le chemin à plusieurs niveaux en douceur, mais je ne peux pas entrer après l'actualisation F5.

ROOTPATH ​​est votre chemin racine, par exemple: "/ XXX /", l'accès est http: // IP : PORT / XXX /

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