vojtech-dobes/history.nette.ajax.js

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Šaman
Člen | 2659
+
0
-

Ahoj, mám několik otázek a postřehů k tomuto rozšíření, tedy hlavně na @vojtech.dobes

  1. Cachování v prohlížeči vyžaduje aktuální nette.ajax.js a aktuální (@dev) history.ajax.js. Tagované verze některé popisované funkce nemají.
  2. Jak se používá data-history-nocache? Nikde jsem o tom nenašel zmínku, jen v commitu.
  3. Jde nějak vynutit skutečný redirect? Konkrétně přihlašovací formulář chci ajaxově odesílat kvůli validaci, ale po úspěšném přihlášení chci provést pravý redirect.
  4. Tohle nesouvisí přímo s historií, ale s nette.ajax.js: Když mám třeba v layoutu snippet content okolo celé šablony a pak nějaký malý snippet uvnitř a ten chci překreslit, vrací se mi v odpovědi i celý content. Asi proto, že je-li nevalidní jeden jeho snippet, je nevalidní taky. Dá se tomu nějak předejít? Nebo musím mít jen malé snippety a žádný celkový? Jaké je vlastně best practise při vytváření snippetů?
  5. Je i s rozšířením history doporučováno psát bloky if($this->isAjax)…, nebo je lepší rovnou redirectovat, jako v aplikaci bez AJAXu?

V každém případě díky za oba doplňky, nekodér jako já by se bez nich co se týče ajaxu vůbec nechytal.
Jo, a ještě jsem si všiml, že repozitář history neobsahuje autora a licenci, dokonce ani samotný JS soubor.

Editoval Šaman (25. 7. 2014 4:31)

Šaman
Člen | 2659
+
0
-

Pokus, jestli mohu odpovídat na otázku, kterou jsem sám položil, ač mi červená bublina tvrdí , že nemohu…
@DavidGrudl: Vida, mohu :D

Editoval Šaman (25. 7. 2014 4:26)

David Grudl
Nette Core | 8218
+
0
-

Komentovat můžeš.

Šaman
Člen | 2659
+
0
-

Aha, už to chápu. To nebyla odpověď :D

jiri.pudil
Nette Blogger | 1029
+
0
-

Ad 2. Ten atribut se nastavuje u snippetu (<div n:snippet="foo" data-history-nocache></div>) a zabraňuje tomu, aby se obsah toho snippetu cachoval. Jeden možný use case je popsaný v pull requestu

Ad 3. Můžeš pro ten formulář vypnout history rozšíření (přes data-ajax-off), ale obávám se, že kvůli tomutok řádku si budeš muset přesměrování obstarat sám.

Šaman
Člen | 2659
+
0
-

2. Takhle jsem to použít zkoušel, i když na seznamu <ul>, ale kešování to nezabránilo. I když to možná souvisí s tím, že šlo o vnořený snippet, takže je možné, že se sice nekešoval, ale celý content ano. Mě pomohlo jen celkové vypnutí kešování.
3. Díky, přihlašování holt nebude ajaxové.

Maekoboss
Člen | 36
+
0
-

Takz by mě zajímali body 4. a 5. zrovna to řeším.