angulaire.js - conflit entre Angularjs et jquery-mobile sur le routage frontal
大家讲道理
大家讲道理 2017-05-15 16:53:12
0
4
905

Actuellement, la vue partielle est actualisée. Certains styles de jquery-mobile deviendront invalides et la page entière devra être forcée à être actualisée.
Comment actualiser la page entière ?

Supplément : Si vous utilisez location.replace(), utilisez d'abord location.replace('page/page1.html) pour localiser directement l'emplacement spécifique. Dans ce cas, vous n'aurez que le code de cette page. En fait, cette page est une page modèle, puis la. la page modèle est du HTML pur, sans partie CSS.
Ensuite, l'utilisation de location.replace(#page1) change simplement la vue partielle et n'a aucun effet.
Si c'est $location.reload(), il passera à l'emplacement défini par / dans l'itinéraire au lieu d'actualiser la page actuelle…………
Comment actualiser la page entière actuelle ? ou

Comment configurer le routage ? L'actualisation de la page doit-elle actualiser la page actuelle au lieu de passer à la page d'accueil ?

Si la page actuelle est http://localhost:8080/#/setting
Après F5 c'est http://localhost:8080/setting#/
Puis route vers autrement, qui est /

Question originale : Comment rafraîchir la page entière en angulaire ?

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

répondre à tous(4)
PHPzhong

Processus de résolution

Vous devez forcer l'actualisation de la page entière, l'actualisation partielle n'est pas possible
C'est l'effet de F5
=====================>
J'ai trouvé ça après avoir rafraîchi url会变化
Si l'url ne change pas, alors nous pouvons utiliser window.reload
Nous devons donc résoudre le problème des changements d'URL
=====================>
Parce que la page continue de signaler une erreur de chargement de la page
J'ai vérifié et c'est jquery-mobile
Ensuite, j'ai bloqué les fichiers JS et CSS de JQM et j'ai trouvé URL变化是JQM引起的
Trouver des solutions associées
=====================>
Oh, si tu veux persisterjquery-mobile+angular
Vous devez utiliser le saut de page de jqm.
=====================>
Le cadre de l'interface utilisateur frontale est remplacé par jquery-mobile par bootstrap

Conclusion

jqm和angular关于前端路由方面有冲突,
Si vous insistez pour utiliser jqm, vous ne pouvez pas utiliser le routage frontal d'angular. Vous devez utiliser le jq de jqm pour écrire des sauts de page, ce qui peut rendre la page compliquée.
Il a donc fallu une demi-journée pour le remplacer par bootstrap.

左手右手慢动作

emplacement.href ? emplacement.hash ?

小葫芦

Si cela ne fonctionne pas, utilisez simplement jquery. Qu'en pensez-vous ?

洪涛

Je ne sais pas pourquoi, mais j’ai vraiment envie de t’aider quand je vois ta situation. Actuellement j'intègre également JQM et Angularjs et j'ai quelques idées !
Concrètement, configurez certains paramètres lors de l'initialisation de jqm :

    $( document ).on( "mobileinit", function() {
        $.mobile.page.prototype.options.domCache = false;// 关闭缓存
        $.mobile.initializePage = false;
        $.mobile.defaultPageTransition = "fade";
        $.mobile.autoInitializePage = true;
        $.mobile.hideUrlBar = false;
        $.mobile.linkBindingEnabled = false;
        $.mobile.hashListeningEnabled = false;
        $.mobile.ajaxEnabled = false;

    });

Veuillez vous référer à la documentation officielle de l'API pour chaque configuration.
L'une de ces configurations consiste à résoudre le problème de conflit d'URL, qui consiste à désactiver le routage JQM.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal