RSS Мои друзья Контакты

В наше время почти каждое приложение предусматривает различный функционал для разных групп пользователей (например таких как admin, member, subscriber и т.д. ). Эти группы обычно называются "ролями". По своему опыту, могу сказать, что у большинства приложений логика построеа вокруг ролей (например, если у пользователя есть эта роль, тогда он может это сделать) и в итоге имеем массивную систему с множеством сложных проверок, которую трудно поддерживать. Эту проблему можно решить при помощи CASL.

Zone.js - это библиотека позволяющая отслеживать асинхронные операции. Angular 2+ использует ее для того, чтобы запускать dirty checking после всех асинхронных операций: будь-то запрос на сервер, таймер или же событие мыши. Но мало кто понимает как это работает... Поэтому давайте разбираться вместе!

Не так давно стало популярным создавать PWA - Progressive Web Applications. Наибольший плюс таких сайтов, в том, что они работают не хуже, чем обычные десктопные программы. И в этой статье я покажу, как сделать с обычного Magento магазина - быстрый, прогрессивный :)

Как-то раз работая над очередным мобильным приложением на ionic2, я использовал ion-slides, который как оказалось написан на основе другого open source проекта - Swiper.io. С тех пор я его использую во всех проектах где нужен слайдер и сейчас расскажу почему.

В Magento есть несколько встроенных возможностей по оптимизации клиентской части сайта. В данной статье мы научимся не только объединять все JavaScript файлы в один, а и минифицировать конечный файл!

Вчера, на одном из старых сайтов я увидел номера телефонов в виде рисунков, и подумал - какая глупость! Но потом нашел оправдание человеку :) Скорее всего он не имел достаточно навыков, чтобы сделать это "правильно". Но позже до меня дошло на сколько это на самом деле гениально!

Одним из моих подручных инструментов для реализации single page application-ов стал Knockout. И я хочу поделится некоторыми трюками для написания хорошего кода с использованием этого чудесного фреймворка.

Knockout позволяет расширять свой функционал, а это значит, что конечный пользователь не ограничен использованием только стандартных байндингов, таких как click, value, text, etc. Даже не используя своих сверхспособностей программиста, можно без особых усилий написать байндинг, который реализует стандартное grid поведение (сортировка, удаление, добавление, пейджинг).

Никакое приложение не может быть востребованным и популярным, если оно не отвечает на действия пользователя. KO предоставляет ряд инструментов (байндингов) для обработки разных событий и управления полями формы.

По аналогии большинству языков программирования в Knockout реализованы основные управляющие конструкции: foreach, if, ifnot и with. foreach будет полезен при итерировании по массиву значений, if - для принятия какого-либо решения и with - для создания определенного контекста выполнения. Рассмотрим их более детально.
1 2