Wpis z mikrobloga

Już od długiego czasu się nad tym zastanawiam(i mam pewien pomysł)...
Istnieje React, ostatnio popularny Vue.js, mniej znany Riot.js, wszystkie polegają na tworzeniu czegoś w rodzaju komponentów, a następnie podmianę elementów w DOM na wynik renderowania. Wszystko pięknie, ale myśleliście jak korzystać z czegoś takiego w sposób SEO-friendly, działający (potencjalnie) w Pythonie, PHP, Ruby itd., a nie tylko w Node + bez zabawek typu implementacja silnika V8/PhantomJS? ;)

#programowanie #webdev #javascript
  • 13
@Ginden: może doprecyzuję, mam na myśli server-side rendering zawartości elementu, więc crawlable bez JS, a dynamiczne działanie tego elementu byłoby obsługiwane w pełni przez komponent React/inny.
@Ginden: overhead, niepotrzebna komplikacja, nie potrzebuję dokładnego renderu(izomorfizm - V8), myślałem bardziej nad definiowaniem struktury elementu po stronie serwera, a obsługę eventów itp. przez React jak to zwykle bywa. Rzuć okiem na projekt XHP w PHP od Facebooka, podobne to jest zresztą do Reacta - definiujesz komponenty, które mogą renderować(to jest tylko wypisywanie, no bo server-side) inne komponenty.
Serwer mógłby renderować podstawę, a React tylko manipulować DOMem już wcześniej wygenerowanym.
@5z7k9: Zawsze możesz pisać strony klasyczne które potem będziesz podmieniał. Jeśli nie robisz stronki SPA tylko klasyczną linkownie, to możesz silnikiem backendowym wyrenderować zwyklego htmla na podstawie danych podstawionych do widoku zamkniętych w osobny komponent, np niech to będzie jakaś lista zamówień:

* Zamowienie #1111
* Zamowienie #2222

global.orderList = [ { name: 'Zamowienie #1111' } , { name: 'Zamowienie #2222' } ];

Wynikowy HTML będzie SEO-friendly, natomiast po