-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PD extension nejsou správně zavolána při popstate #16
Comments
Stejný problém je při použití |
|
@Qitek85 Narazil som na chybu viz link. Chyba nastáva v prípade že preklikávam medzi zafiltrovaniami a teda sa mi zduplikujú produkty vo výpise. 2022-01-13.at.12-27-13.mp4 |
Toto podle mě není řešitelné na úrovni pd.ajaxu, protože pokud použiji nějaké pd extension při kliku na odkaz, neznamená to imho automaticky, že to stejné extension by mělo být použito při kliku zpět. Nejde o symetrickou relaci, protože to, co ta extension dělá, není nutně reverzibilní provedením extension podruhé. Druhý problém je vůbec se zjišťováním, které extension použít, protože pokud jdu zpět, mám informaci o stavu, do kterého jdu, ale ne o stavu ze kterého jdu. Přitom právě do stavu ze kterého jdu si můžeme ukládat informaci o použitých extension. Ale to pak nejsme schopni vytáhnout po přechodu. Toto by technicky bylo řešitelné jen velmi obtížně například modifikací stavu historie ještě před vykonáním toho requestu. To by ale mohlo mít kdo ví jaké vedlejší účinky. Problém hlášený @sebastianvass nakonec vyřešíme jinak. Místo Toto issue tedy pravděpodobně časem uzavřu, protože technicky nevidím smysluplné řešení. |
V
popstate.nette
callbacku chybí uvnitřstate
informace o pd extension, které byly pro request zapnuté. Proto připopstate
jsou všechna pd extension vypnutá a neaplikují se, což může být teoreticky problém (mohou modifikovat URL přidáním parametru, atd.).Řešením by mohlo být do stavu přidávat pole pd extension pro daný request. To se pravděpodobně neobejde bez modifikace samotného
history.nette.ajax.js
.The text was updated successfully, but these errors were encountered: