Контакты

Достижения

Все достижения (10)

Наибольший вклад в теги

Все теги (70)

Лучшие ответы пользователя

Все ответы (176)
  • Настройка окружения для front end?

    devellopah
    @devellopah
    установи yeoman командой npm install -g yo
    установи webapp-generator (сгенерирует дефолтный шаблон для будущего сайта) командой npm install -g webapp-generator
    установи gulp-cli и bower командой npm install -g gulp-cli bower

    и наконец командаyo webapp чтобы поднять каркас

    Вообщем всё это объясняется на самом сайте yeoman.io

    UPDATE: поскольку этот вопрос очень многих заинтересовал, я написал простой стартер для вёрстки с pug.
    вкратце: под капотом проект, который скаффолдит webapp-generator, только приспособленный для работы с pug, убрана папка тестов, добавлен gulp-uncss(чтобы отрезать неиспользумемые стили фреймворка) и почищен gulpfile.js
    Вобщем форкайте, лайкайте, пулл-реквестите(если хотите)
    Ответ написан
  • Зачем нужна jwt стратегия?

    devellopah
    @devellopah
    Справка(упрощённо).
    Аутентификация - вход в систему.
    Авторизация - получение доступа к инфе из базы данных.

    Если ты создаёшь сессию для пользователей своего приложения, то когда юзер залогинился на сервере инициируется сессия и сервер в куках отправляет на клиент session id.
    В последующих запросах к базе данных сервер читает этот session id из кук, обращается к некой внутренней базе ( обычно имеет форму ключ-значение, где ключ - это session id, значение - mail пользователя, к примеру ) затем обращается к базе данных, достаёт данных для пользователя ( мы определили его на предыдущем шаге ) и возвращается в response.
    Такая система называется stateful ( поскольку мы вынуждены хранить инфу об аутентифицированных пользователях на сервере ). Это не вяжется с концепцией RESTful API, подразумевающей, что сервер должен быть stateless ( не хранить инфу аутентифицированных пользователях ).
    Добиться этого помогает json web token, поскольку он хранит всю необходимую для авторизации пользователя инфу. Это позволяет тебе написать RESTful API(stateless)

    Что почитать: session-based authentication, token-based authentication
    Ответ написан
  • Как работать с булевыми методами?

    devellopah
    @devellopah
    d - это NodeList (список узлов), не имеющий метода hasAttribute()

    попробуй так (es5 версия)
    var tags = ['div', 'span', 'ul', 'li', 'p', 'script', 'h1', 'h2'];
    var forEach = Array.prototype.forEach
    
    tags.map(function(tag) {
      var list = document.querySelectorAll(tag);
    
      forEach.call(list, function(el) {
        el.className && console.log(el.className)
      })
    })
    Ответ написан
  • Почему промисы являются microtasks, а таймеры - просто tasks?

    devellopah
    @devellopah
    не долго гугля наткнулся на это (внутри диаграмма, которая всё объясняет)

    По поводу того почему промисы оформляются как микротаски есть такое пояснение:
    Treating promises as tasks leads to performance problems, as callbacks may be unnecessarily delayed by task-related things such as rendering. It also causes non-determinism due to interaction with other task sources, and can break interactions with other APIs, but more on that later.


    Если коротко, в event loop по очереди выполняются таски, однако сам таск может включать некую очередь из микрозадач, которая, в свою очередь, выполнится в контексте текущего таска. То есть, если взять таски x и y, где y следует за x, то получится, что console.log('promise') выполнится в контексте таска x(в самом его конце, аккурат перед началом выполнения следующего таска), а console.log('timer') - в котексте таска y.
    Ответ написан

Лучшие вопросы пользователя

Все вопросы (213)