Jak robić aplikacje po stronie przeglądarki
Software Developer, Team Leader @ netguru
Pracuję z Ember.js, Ruby on Rails i React.js
Single Page Application
Brak przeładowań strony podczas wykonywania akcji
Doświadczenia podobne do aplikacji natywnej na OS
Nieograniczona długość życia aplikacji po stronie klienta
Wyzwania
Co jeśli użytkownik spędzi na naszej stronie 10 dni?
Jak synchronizować dane po stronie serwera?
Jak utrzymywać URL, skąd wiedzieć co i kiedy pokazać?
1. Instalacja node.js
2. Instalacja ember-cli
$ npm install -g ember-cli
3. Start projektu
$ ember new my-new-app
4. Kodowanie
$ ember server
$ brew install nodejs
Routing
Dynamiczne szablony
Abstrakcję na dane
Zarządzanie odświeżaniem
Animacje
Wsparcie
sklep.com/zamow
sklep.com/zamow
sklep.com/zamow
sklep.com/zamow
sklep.com/zamow/dane
sklep.com/zamow/zaplac
Masz 10 nieodczytanych wiadomości.
Najnowsza z nich to "To już ostatnia poprawka..."
const state = {
messages: [
{
id: 1,
title: 'To już ostatnia poprawka...',
},
{
(...)
},
],
};
<h1>Masz {{state.messages.length}} nieodebranych wiadomości</h1>
<h4>Ostatnia z nich to: '{{state.messages.firstObject.title}}</h4>
Ember Data jest biblioteką opartą o wzorzec adaptera
Koordynuje warstwę komunikacji
Potrafi działać real time w oparciu o WebSockets
function fetchUsers() {
$.ajax('localhost/users', function(err, res) {
// zaktualizuj treść strony o listę userów
}
}
$(document).ready(function() {
fetchUsers();
});
(...)
return this.store.findAll('user');
(...)
{{#each users as |user|}}
<h4>{{user.name}}</h4>
{{/each}}