Как стать автором
Обновить
0
@henbread⁠-⁠only

Пользователь

Отправить сообщение

Магия AngularJS: никогда не вешайте binding на примитивы

Время на прочтение3 мин
Количество просмотров33K

Магия AngularJS: никогда не вешайте binding на примитивы


Если вы используете AngularJS, скорее всего вы неоднократно сталкивались с правилом «Не вешайте binding на примитивы». В этом посте я подробно разберу пример, в котором использование примитивов создает проблемы: создание списка элементов , в котором каждый из элементов привязан к строке.

Наш пример

Скажем, вы работаете над приложением с книгами, и у каждой книги есть список тегов. Наивным способом предоставления пользователю возможности редактировать теги будет:
<div ng-controller="bookCtrl">
    <div ng-repeat="tag in book.tags">
        <input type="text" ng-model="tag">
    </div>
</div>

Читать дальше →

Добавлена поддержка «Яндекс.Карты» версии 2.1 в angular.js модуль yaMap

Время на прочтение1 мин
Количество просмотров8K
После публикации статьи «Яндекс.Карты для angular.js утекло немало воды, а также появились новые возможности. В настоящий момент в модуль angular.js для использования карт „Яндекса“ на ваших страницах добавлена поддержка версии 2.1 yandex map api. Не скажу, что суть модуля сильно поменялась, но все же некоторые изменения были внесены. Хотите знать какие, добро пожаловать под кат.
Читать дальше →

AngularJS. Организация данных

Время на прочтение6 мин
Количество просмотров33K
По мере того как растет приложение, представление данных в виде набора JSON объектов становится все менее удобным. В этой статье я расскажу про способ организации работы с данными в своих приложениях.

Начнем с простого примера. Создадим страницу с информацией о книге. Контроллер:
Читать дальше →

AngularJS — Вы уверены, что знаете как работает ng-if?

Время на прочтение5 мин
Количество просмотров44K

Не так давно я уже писал про поведение ng-if директивы, но тогда я столкнулся с проверкой условия, но сегодня возникла другая проблема.

В проекте достаточно много таких элементов как tooltip, popover, modal windows и так далее. Думаю, все вы понимаете, что это за элементы и рассказывать про них я не буду. Для многих из них используется абсолютное позиционирование. Если бы мы не использовали кастомные директивы, то проблем бы не было — все модальные окна лежали бы в конце body и показывались бы когда нужно. Но так, как все эти элементы объявлены как директивы, возникает проблема с позиционированием, так как у директивы может быть родитель с относительным позиционированием и так далее.

<div style="position: relative; overflow:hidden">
  <button ng-click="visible = true">Greeting</button>

  <modal visible="visible">
      Hello, Habr!
  </modal>
</div>

Читать дальше →

ANGULARJS + REQUIREJS

Время на прочтение5 мин
Количество просмотров55K

Во время разработки проектов мы полюбили AngularJs. Но также мы встретили некоторые трудности в борьбе за чистоту модульности, с которой AngularJs справляется хорошо, но все же порой ему чего-то не хватает. RequireJs оказывается полезным там, где AngularJs оставляет желать лучшего, но использование их вместе — не совсем тривиальная задача.

Итак, опишем наш взгляд на решение проблемы.

Для чего?

Работая с AngularJs вы обязательно задумаетесь о правильной организации кода. Конечно уже существуют отличные примеры решения проблемы. Например можно изучить теоретический пост Брайана Форда или практическое руководство Клиффа Мейерса. Я же поделюсь способом организации кода в приложениях AngularJs с использованием RequireJs.

Данный подход будет полезен, если вы хотите:

  • перестать беспокоиться о подключении скриптов в правильном порядке;
  • загружать javascript код асинхронно;
  • иметь возможность скомпилировать код в один минифицированный JS-файл;
Читать дальше →

Перенос данных из одной базы в любую другую

Время на прочтение2 мин
Количество просмотров14K
В нашем Ruby On Rails 3 приложении возникла необходимость перейти с Sqlite на MySQL. Нужен было простой и действенный способ, без громоздких Perl скриптов и платных утилит, которыми пестрит интернет и в частности StackOverflow.
Читать дальше →

Модуль определения источников посетителей сайта для Ruby on Rails

Время на прочтение8 мин
Количество просмотров16K
Этот пост в основном о веб-аналитике: о том, как корректно определять источники посетителей вашего сайта, и о моём модуле для Ruby on Rails, который помогает в этом нелёгком деле. В конце есть небольшая часть, на которую я попрошу обратить внимание участников Rails сообщества: она обо мне и Rails. Но давайте по порядку.
Читать дальше →

Полиморфные сквозные ассоциации в Ruby on Rails

Время на прочтение4 мин
Количество просмотров15K
В статье идет речь о методе создания полиморфизма для связей many-to-many в Ruby on Rails.

Задача


Допустим, что необходимо разработать систему управления грузовым транспортом. В нашем распоряжении имеются несколько видов этого транспорта: поезда, вертолеты, грузовики и баржи. И известно, что каждое средство осуществляет перевозку только в строго определенные населенные пункты. Например, часть грузовиков катается по центральной части России, часть по южной, вертолеты работают в Сибири и на Камчатке, поезда вообще ограничены железнодорожным полотном и так далее.
Каждый вид транспорта в разрабатываемой системе будет представлен своим классом: Train, Copter, Truck, Ship соответственно.
Населенные пункты (города, поселки, научные станции, тут нас интересует не размер, а географические координаты), куда осуществляется перевозка, представлены классом Location.
Стоит условие: к каждой единице транспорта может быть привязано сколько угодно Location. В свою очередь к каждому населенному пункту может быть привязано сколько угодно единиц транспорта разных видов.

Читать дальше →

Постинг в популярные соц сети с помощью джема social_poster

Время на прочтение2 мин
Количество просмотров6K
SocialPoster — это джем, который позволяет с легкостью постить в популярные социальные сети из вашего руби приложения. В данный момент есть поддержка таких сетей:
  • Facebook
  • Twitter
  • Livejournal
  • Vkontakte
Читать дальше →

Rails: ajax-валидация в стиле DRY

Время на прочтение8 мин
Количество просмотров12K
Когда я только начинал задумываться о том, чтобы приобщиться к миру веб-разработки, и выбирал язык, с которого начну, одна из википедий мне напела, что в основе философии Rails лежат 2 принципа: Convention over configuration (CoC) и Don’t Repeat Yourself (DRY). Что касается первого — я тогда вобще не понял о чём речь, а вот второй понял, принял и ожидал, что в недрах этого замечательного фреймворка, я отыщу нативный инструмент, позволяющий мне один раз написать правила валидации для атрибутов модели, и потом использовать эти правила как для front, так и для back проверок.
Читать дальше →

Как отправлять push уведомления из Вашего Rails приложения

Время на прочтение3 мин
Количество просмотров16K
Один из наиболее популярных способов связи мобильного приложения с сервером — отправка push уведомлений пользователю. Если Вы уже сталкивались с реализацией push уведомлений, то для Вас открытия Америки не произойдет, однако, новичкам в данной теме приходиться туго — это связанно с огромной путаницей в информации (от переводчика: действительно довольно много противоречивой, а зачастую и вовсе бесполезной информации). Именно эта путаница стала причиной написания данной статьи для WellWithMe, где я опишу разработку серверной части push уведомлений.

Читать дальше →

Вышел релиз Rails 4.1. Некоторые тонкости переезда

Время на прочтение3 мин
Количество просмотров17K
image
8 апреля в официальном блоге Ruby on Rails появилось сообщение об официальном выходе Rails 4.1. Весь функционал уместился в 5200 коммитов.

На хабре уже был обзор бета версии. Также можно почитать Release notes и A Guide for Upgrading Ruby on Rails.

В статье я бы хотел остановиться на некоторых тонкостях и деталях того, что под капотом.
Читать дальше →

Как мы увеличили скорость генерации JSON в 6000 раз

Время на прочтение2 мин
Количество просмотров15K
Краткий обзор способов формирования JSON

На сегодняшний день в Rails имеются следующие способы сериализации объектов в JSON:
  1. Вызов to_json() напрямую.
  2. RABL
  3. Active model serializers
  4. JBuilder

Читать дальше →

Разбор задач Russian Design Cup 2013. Задача про умные часы

Время на прочтение5 мин
Количество просмотров13K
В преддверии Russian Design Cup 2014 мы предлагаем вспомнить и проанализировать задачи и решения прошлогоднего чемпионата. В частности, мы расскажем о самых интересных работах и их авторах.

Сила Хабра в том, что его сообщество состоит из множества различных специалистов: дизайнеров и верстальщиков, фронтэнд- и бекенд-программистов. Мы предлагаем вам обсудить лучшие решения задач вместе с участниками RDC. Дизайнеры расскажут о своих находках и том, как они к ним пришли, о сложностях, с которыми они сталкивались. Мы пройдемся по трем самым интересным задачам Кубка, и сегодня начнем c задачи о часах.

«Крупные компании представили новые устройства, так называемые «умные» часы. Они взаимодействуют со смартфонами через Bluetooth LE. Также известно, что многие покупатели уже возвращают их обратно, не находя им применения. Представьте концепт приложения любой социальной сети для таких часов, чтобы люди не захотели их возвращать. Какие функции и возможности вы вынесете на часы? Ок, про уведомления о новых сообщениях мы уже в курсе».

1. Айрат Гафиятуллин, топ 10 участников.

Читать дальше →

С чего начать своё расширение для Photoshop, Illustrator и др. на HTML5

Время на прочтение5 мин
Количество просмотров38K
Hello Habrahabr Panel

В этой статье я расскажу как при помощи HTML и JavaScript сделать своё собственное расширение для Photoshop, Illustrator, Premier, Flash, Prelude или InDesign.

Читать дальше →

Дайджест интересных материалов из мира веб-разработки и IT за последнюю неделю №108 (4 — 10 мая 2014)

Время на прочтение5 мин
Количество просмотров39K
Предлагаем вашему вниманию подборку с ссылками на полезные ресурсы, интересные материалы и IT-новости


Читать дальше →

Дизайн сайта в Sketch.app. Часть 2.2: финальный макет

Время на прочтение4 мин
Количество просмотров31K
intro-img-3

Последняя часть по работе с сайтом в Скетче.
Читать дальше →

Обучающие видео по работе в Axure

Время на прочтение2 мин
Количество просмотров59K
«Всем привет, меня зовут Егор Камелев и сегодня я расскажу вам…»
Если вы уже слышали эти слова, то, скорее всего уже встречались с одним или несколькими из моих обучающих видео по работе в Axure. Прошло уже довольно много времени с тех пор, как я добавил первое из них (тогда ещё для Акшуры какой-то древней версии), и я решил сделать некий сводный список того, что уже есть, чтобы вам не пришлось мучиться с поиском на моём канале. Да, конечно, в этом списке только те ролики, которые имеют отношение в Акшуре седьмой версии! Итак, поехали.
Читать дальше →

Дайджест интересных материалов из мира веб-разработки и IT за последнюю неделю №109 (11 — 17 мая 2014)

Время на прочтение6 мин
Количество просмотров42K
Предлагаем вашему вниманию подборку с ссылками на полезные ресурсы, интересные материалы и IT-новости


Читать дальше →

Дайджест интересных материалов из мира веб-разработки и IT за последнюю неделю №110 (18 — 24 мая 2014)

Время на прочтение6 мин
Количество просмотров41K
Предлагаем вашему вниманию подборку с ссылками на полезные ресурсы, интересные материалы и IT-новости


Читать дальше →

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность