1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/whtoo-RxJqueryExtension

В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

RxJqueryExtension

Общие сведения: Эта библиотека была создана в ходе работы над визуализацией SQL-генератора. Ранее я рассмотрел несколько внешних библиотек: https://github.com/Reactive-Extensions/RxJS и Bacon.js. После этого было принято решение самостоятельно написать свою библиотеку.

Причины:

  1. Внешние библиотеки содержали слишком много абстракций, что затрудняло использование наблюдателей.
  2. API этих библиотек были недостаточно "практикующими". Мне требовалось простое наблюдение и уведомление, но таких API не существовало.
  3. Я полагал, что использование jQuery вместе с ещё одним сложным библиотечным решением будет излишним.

Результат:

  1. Была создана эта библиотека.
  2. На её основе был создан плагин для управления связанными select-элементами.
  3. Написаны два примера использования: один для выполнения юнит-тестирования основной библиотеки, второй — для тестирования производного плагина.Описание API: Мой API очень прост: Когда объект jq — поскольку он основан на DOM-элементах (ограниченных input, select и button) — вызывает метод $(selector).reactive*(), где * может быть select или input, этот объект jq регистрируется в центре уведомлений, который работает аналогично iOS Notification Center. Каждое уведомление имеет ключ-значение, где ключ — это имя атрибута DOM-объекта, а значение — это новое значение. Когда объект jq вызывает метод $(selector).connectRx(map), он начинает наблюдать за уже зарегистрированными объектами в центре уведомлений согласно параметрам map.Пример кода:
$('#select2').reactiveSelect().connectRx({
    targets: ['select1'],
    func: function(data) {
        console.log(data['select1']);
    }
});

$('#select1').reactiveSelect().connectRx({
    targets: ['select2'],
    func: function(data) {
        console.log(data['select2']);
    }
});

Этот код регистрирует select1 и select2 в центре уведомлений и позволяет им наблюдать за изменениями друг у друга.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

reactive plugin for jquery Развернуть Свернуть
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/whtoo-RxJqueryExtension.git
git@api.gitlife.ru:oschina-mirror/whtoo-RxJqueryExtension.git
oschina-mirror
whtoo-RxJqueryExtension
whtoo-RxJqueryExtension
master