Dva: Quando o carregamento dinâmico, o arquivo .js dividido não pode ser encontrado quando a rota tem caminhos de vários níveis

Criado em 23 set. 2016  ·  13Comentários  ·  Fonte: dvajs/dva

O exemplo do painel do usuário é modificado para apenas router.js de acordo com o exemplo de carregamento dinâmico, da seguinte maneira:
image
Quando o histórico usa browserHistory, se for roteado para o caminho / demo / users, ele solicitará 127.0.0.1:8989/demo/0.js e um erro 404 aparecerá.
image
Se o histórico usar hashHistory, não há problema, a solicitação é 127.0.0.1:8989/0.js

Se for roteado diretamente para / users, não haverá problema se for hashHistory ou browserHistory.

faq question

Todos 13 comentários

Se o modo de carregamento dinâmico não for usado diretamente, não há problema com o roteamento para vários níveis
image

Tente combinar o publicPath do webpack com / .

image

Depois de adicionar publicPath, o route / index.js do caminho raiz irá diretamente 404.

@yinlsea Como seu vsc suporta o projeto react? Usei o padrão e tentei instalar algumas extensões, mas quando encontrei uma instrução no formato {...foo,...bar} , a formatação automática foi paralisada. Eu realmente não quero usar outros editores, não há como ter apenas formato manual.

@xjdata não consegue reconhecer o símbolo da estrutura, mesmo

Use idea ou webstorm, a atualização oficial é muito rápida, e o suporte também é muito completo.

@ohmyauthentic木 有 ~ Não é possível alterar o webstorm ~

Resolvido, use browserHistory, ao carregar sob demanda, você precisa escrever assim:
import {useRouterHistory} from'dva / router ';
import {createHistory} from'history ';

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

Resolvido, use browserHistory, ao carregar sob demanda, você precisa escrever assim:
import {useRouterHistory} from'dva / router ';
import {createHistory} from'history ';

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

Resolvido, use browserHistory, ao carregar sob demanda, você precisa escrever assim:
import {useRouterHistory} from'dva / router ';
import {createHistory} from'history ';

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

Olá, resolvi o problema de subdiretórios no seu caminho, mas agora com caminhos de vários níveis, digite http: // localhost : 8989 / indexpage no caminho de primeiro nível e atualize por f5, mas http: // localhost : 8989 / indexpage / test1 Pressionar f5 não funcionará, o relatório não pode localizar o arquivo .js

@yinlsea A que ROOTPATH ​​se refere? Posso usar Link to = '/ xx / xx' para inserir o caminho de vários níveis sem problemas, mas não consigo entrar após a atualização F5.

ROOTPATH ​​é o seu caminho raiz, por exemplo: "/ XXX /", o acesso é http: // IP : PORT / XXX /

Esta página foi útil?
0 / 5 - 0 avaliações