Пользователь пока ничего не рассказал о себе

Достижения

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

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

Все теги (54)

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

Все ответы (191)
  • Почему данном случае теряется контекст this?

    Aetae
    @Aetae
    Тлен
    Простой ответ:
    Берём метод:
    метод = function(){
      console.log(this)
    };
    и(не важно как) пихаем его в какие-то объекты.
    Получаем:
    хрень.метод() // this - хрень
    хрень.кишки.метод() // this - хрень.кишки
    метод() // this - window
    
    хрень.метод.call(хрень.кишки) // this - хрень.кишки
    метод.call(хрень.кишки) // this - хрень.кишки
    метод.call(null) // this - null
    
    элемент.addEventListener('оппа', хрень.метод) //  this -элемент
    элемент.addEventListener('оппа', метод) //  this -элемент
    элемент.addEventListener('оппа', хрень.кишки.продукт.метод) //  this -элемент

    По сути this для фукции - это то, что идёт перед точкой, кроме тех случаев когда он переопределён явно. Всё, никакой эзотерики.)

    fn.call(!this ? this : obj) - это чушь скорее всего. Если this - falsy, то ставим его как this при вызове функции fn, иначе ставим obj. Falsy this может быть только при явном указании(или в strict режиме, при вызове функции напрямую("без точки перед ней")), и скорее всего передача пустого this в таком случае просто сломает выполнение fn.

    Ну ещё следует упомянуть стрелочную фукнцию:
    метод = () => {
      console.log(this)
    };
    это можно считать за явное указание this, потому что this тут всегда привязан тот, что был при создании стрелочной функции, независимо от того как и откуда её вызывают.
    Ответ написан
  • Сверстать блок необычной формы?

    Aetae
    @Aetae
    Тлен
    Градиентами:
    Тень внутри сделайте тем же способом сами.)
    Ответ написан
  • Как удалить все SVG на странице с помощью PhpStorm?

    Aetae
    @Aetae
    Тлен
    Может в phpstorm и есть что-то более магическое, но универсальное решение для любых нормальных редакторов: регулярное выражение:
    <svg [\s\S]*?</svg>
    Конкретно в phpStorm:
    1. Ctrl(+Shift)+R;
    2. галочку на Regexp;
    3. Replace all.

    Вообще регулярные выражения рекомендуется изучить - вещь незаменимая и очень упрощающая работу с любым текстом. И не смотрите что они страшные на вид: писать их гораздо легче чем читать.)
    Ответ написан
  • Огромное число коммитов в vuex?

    Aetae
    @Aetae
    Тлен
    Потому что это хранилище. Там надо хранить.
    Это не шина обмена данными.
    Если вы делаете компонентомешалку, используйте например provide и inject для общей в рамках родительского компонента системы.
    Ответ написан
  • Как правильно верстать адаптивно?

    Aetae
    @Aetae
    Тлен
    Чтобы верстать адаптивно - в первую очередь надо верстать адаптивно.
    Размеры все должны быть по максимуму относительными.
    Флексы, гриды, проценты, vh, vw, em.
    Медиа-запросы же нужно использовать только тогда, когда нужно поменять структуру кардинально, а не для подгонки пикселей.
    Ответ написан

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

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