Заметки


🔥 Переписываем Ajax-запросы

Недавно у меня возникала необходимость показывать прелоадер каждый раз, когда в проекте отправляется запрос на удаленный сервер. Так как мы используем Babel для конвертации кода из ES6 в ES5, то fetch превращается в XMLHttpRequest. Это значит, что можно легко переписать два метода и задача будет решена.

var _oldSend = XMLHttpRequest.prototype.send;
XMLHttpRequest.prototype.send = function () {
  var _oldReadyStateChange = this.onreadystatechange;

  // Ваш код вначале Ajax-запроса

  _oldSend.apply(this, arguments);
  this.onreadystatechange = function () {
    if (this.readyState === 4) {

      // Ваш код, когда Ajax-запрос завершен

    }
    if (typeof _oldReadyStateChange === 'function') {
      _oldReadyStateChange.apply(this, arguments);
    }
  };
};

Для того, чтобы показать индикатор закгрузки, я переписал метод send, сохранив предварительно старую функцию в переменную _oldSend. Ну а onreadystatechange сообщает нам когда запрос завершен.

Этот способ отлично подойдет, если вы используете jQuery.

Читать 1 мин | 27.12.2015 14:57

🔥 Песенка предвыходного дня

Читать 1 сек | 24.12.2015 01:40

🔥 Как я посмотрел «Звездные войны: Пробуждение силы», и мне не понравилось

В первый день показа 16 декабря мне удалось посмотреть новый седьмой эпизод космической саги «Звездные войны». Я не то, чтобы фанат, но очень люблю серию и предварительно пересмотрел 3 эпизода 70-80 годов. Последние снятые и первые по хронологии фильмы начала 2000-х не пересматривал, так как делал это около года назад с женой.

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

Дальше иногда будут спойлеры, так что не советую читать тем, кто еще не смотрел.

Продолжение

Читать 5 мин | 18.12.2015 13:28

🔥 Все доклады Girls Not Bombs #5

Видеозапись всех докладов с Girls Not Bombs #5. Мероприятие состоялось в субботу в минском коворкинге Imaguru. Список докладов:

  1. Настя Рыбик: «Yeoman: пишем свой собственный генератор»
  2. Machiko Yasuda: «Learn with friends: how to organize meetups around projects & code»
  3. Jacob Lowe: «SVG: Such vector goodness»
Читать 15 сек | 14.12.2015 13:12

🔥 npm без sudo на Mac OS

Со временем хочется использовать npm без надоедливой команды sudo. Но большинство руководств в интернете предлагает удалить node.js и все поставить заново в какие-то странные и непонятные директории.

Я здесь, чтобы помочь...

Все куда проще. Вот эта консольная команда поможет вам:

sudo chown -R $(whoami) ~/.npm && sudo chown -R $(whoami) /usr/local/lib/node_modules
Читать 16 сек | 11.12.2015 18:10