- PVSM.RU - https://www.pvsm.ru -
Feathers.js [1] — реактивный JavaScript фреймворк вдохновленный Sails [2], Flatiron [3] и Derby [4]. Приложение на feathers.js напоминает обычное expressjs [5] приложение, только вместо
var app = require('express')();
нужно будет написать
var app = require('feathers')();
Для коллекций создается полноценное RESTful API, синхронизация ведется через события SocketIO [6].
// POST http://localhost:8000/todos
{
"description": "You have to do dishes!"
}
// GET http://localhost:8000/todos
[
{
"id": 0,
"description": "You have to do dishes!"
}
]
<script src="http://localhost:8000/socket.io/socket.io.js" />
<script type="text/javascript">
var socket = io.connect('http://localhost:8000/');
socket.on('todos created', function(todo) {
console.log('Someone created a new Todo', todo);
});
socket.emit('todos::create', {
description: 'You have to do something real-time!'
}, {}, function(error, todo) {
socket.emit('todos::find', {}, function(error, todos) {
console.log('Server todos:', todos);
});
});
</script>
Доступ к данным описывается в виде сервиса:
var myService = {
find: function(params, callback) {},
get: function(id, params, callback) {},
create: function(data, params, callback) {},
update: function(id, data, params, callback) {},
remove: function(id, params, callback) {},
setup: function(app) {}
}
Советую посмотреть стандартный TODO-пример [7]. По ссылке демо (реактивное — когда один из пользователей меняет данные, все сразу же видят изменение) и код: и клиентский и серверный.
Документация [8] вполне наглядная и вменяемая.
Автор: zag2art
Источник [9]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/javascript/50772
Ссылки в тексте:
[1] Feathers.js: http://feathersjs.com/
[2] Sails: http://sailsjs.org/
[3] Flatiron: http://flatironjs.org/
[4] Derby: http://derbyjs.com/
[5] expressjs: http://expressjs.com/
[6] SocketIO: http://socket.io/
[7] TODO-пример: http://feathersjs.com/#example
[8] Документация: http://feathersjs.com/#documentation
[9] Источник: http://habrahabr.ru/post/206092/
Нажмите здесь для печати.