-
Notifications
You must be signed in to change notification settings - Fork 68
Uncaught TypeError: this.parseSearchParams is not a function #1307
Description
Description
Sur la version doryphore dev, l'affichage d'une page avec un template dynamique provoque une erreur
Uncaught TypeError: this.parseSearchParams is not a function
les données ne sont pas affichées , une roue tourne
En vidant le cache l'erreur disparait mais sur des wikis avec beaucoup de visiteurs, difficile de leur dire de vider le cache...
En cherchant un peu j'ai trouvé une solution que vous qualifierez certainement de sale (soufflée par l'ia en toute transparence) mais je ne sais pas comment faire autrement, j'ai ajouté un script au niveau de la page titre pour reloader la page lorsqu'il y a une erreur.
<script>
window.addEventListener('error', function(event) {
const errorMsg = event.error?.message || '';
// Détecter spécifiquement votre erreur
if (errorMsg.includes('parseSearchParams is not a function') ||
errorMsg.includes('is not a function')) {
const reloadKey = 'vue_cache_reload';
if (!sessionStorage.getItem(reloadKey)) {
console.warn('Mise à jour détectée, actualisation...');
sessionStorage.setItem(reloadKey, Date.now());
window.location.reload(true);
event.preventDefault();
}
}
});
// Nettoyer après 5 secondes si tout va bien
setTimeout(() => {
sessionStorage.removeItem('vue_cache_reload');
}, 5000);
</script>
Ca semble faire le job, donc il y a un espoir pour que vous trouviez une solution plus propre qui évitera aux utilisateurs de se retrouver devant une page blanche lorsqu'ils affichent un template bazar dynamique après avoir mis à jour yeswiki.
Merci et bisous les devs
Additionnal informations / Informations complémentaires
- version of YesWiki / version de YesWiki doryphore-dev 2025-11-06-2
- url to see the problem or an example / url pour voir le probleme ou un exemple
- screenshot / capture d’écran
- logs