Skip to content

v0.2.0

Choose a tag to compare

@doochik doochik released this 06 May 11:43
· 673 commits to master since this release

Изменения ломающие совместимость

  • [ns.Model] destroyWith стал статическим методом ns.Model.destroyWith
  • [ns.Model] isCollection стал статическим методом ns.Model.isCollection
  • [ns.router] Все маршруты приведены к единому виду paramName:paramType( =defaultValue | ==filter )
  • [ns.View] Событие ns-view-repaint переименовано в ns-view-touch
  • [ns.View] Удалена поддержка subview в пользу гибкого механизма подписывания на события моделей и плагина ns-rivets
  • Вместо no.Promise теперь используется Vow, как более стандартная реализация Promise

Новые возможности

  • Новая функция ns.assert для проверки критичных условий и генерации ошибки, если условия не выполняются
  • У события ns-page-before-load добавился третий параметр newPageUrl (теперь обработчик должен выглядеть так onPageBeforeLoad: function(evt, pairOfPages, newPageUrl) { .. })
  • [ns.Model] Добавлен метод ns.Model.prototype.hasDataChanged(data) чтобы можно было проверить, что пришли те же данные и не повышать версию модели (и не перерисоввывать виды)
  • [ns.Model] Поддержка функции на месте info.params
  • [ns.Model] Добавлено событие ns-model-init на создание модели.
  • [ns.router] Добавлена поддержка фильтров, теперь можно задавать фильтр для параметра в урле /{param:type==filter}
  • [ns.View] Добавлен гибкий механизм подписки на изменения моделей, позволяющий игнорировать изменения выбранных моделей.
  • [ns.View] Добавлен метод ns.View.prototype.patchTree, позволяющий расширять дерево шаблонизации дополнительными данными.
  • [ns.View] Поддержка функции на месте info.params

Исправления

  • [ns.View] Исправлена множественная подписка на ns-model-changed у вида.
  • [ns.request] Исправлен баг в ns.requestManager: иногда для модели в состоянии ошибки ставился статус, что она ок
  • [ns.router] Исправлена валидация значения параметра (раньше a123 тоже подходило под тип int, что не есть верно)
  • [ns.router] Исправлена ошибка в ns.router.generateUrl - не urlencode-ились параметры при генерации урла