• Как сделать обработчик события только при условии?

    coderisimo
    @coderisimo
    Возможно несколько решений.
    Например, что мешает уже в обработчике смотреть есть ли block.data == true. Передавать block.data прямо в обработчик ? И уже в обработчике смотреть block.data == true? Если нет - обработчик дальше не работает, если да , то делает свое дело.

    Есть еще возможность присваивать обработчик в зависимости от какого-то условия, т.е

    <div id="app">
      <button @click="bool ? one() : two()">Click</button>
    </div>


    Вот пример, где обработчик вешается не на все элементы, а только на те что удовлетворяют условию:

    Ответ написан
    7 комментариев
  • Cтранная строка?

    rockon404
    @rockon404
    Frontend Developer
    Значение по-умолчанию для первого аргумента.
    Демо.
    Ответ написан
    3 комментария
  • Почему не нужна конкатенация для http/2?

    Рискну предположить со своими знаниями, что конкатенация давала буст к производительности на http\1 потому, что в старом протоколе на каждый запрос тратились килобайты сопутствующей информации, а также миллисекунды получения. Это dns-резольвинг, установка соединения и т.п. Чтобы это минимизировать, был даже специальный атрибут тэга link, rel="dns-prefetch" (еще preconnect, prefetch, и некоторые другие).

    В новой версии повторные запросы к одному хосту не требуют повторного запроса и отсылания всей информации, которая отсылалась с первым запросом, поэтому смысл от конкатенации теряется. Более того, это даже может навредить, если файл большой - придется ждать загрузки, в то время как с горстью маленьких функционал и стили могут появляться очень быстро и постепенно включаться по мере загрузки при отсутствии оверхеда по килобайтам и задержке.

    И я так понял, что rel="prefetch" на второй версии http тоже более не имеет смысла.
    Ответ написан
    2 комментария
  • Как зайти в веб-приложение под одними данными нескольким пользователям одновременно?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Если у вас нет возможности изменить код веб-портала, то никак.
    Ответ написан
    Комментировать
  • Как из родительского компонента сообщить дочернему что нибудь сделать?

    0xD34F
    @0xD34F Куратор тега Vue.js
    Ставите ref на свою dropzone:

    <vue-dropzone ref="dropzone">

    Когда надо её очистить - вызываете метод:

    this.$refs.dropzone.removeAllFiles(true)
    Ответ написан
    1 комментарий
  • Как отсортировать массив объектов по массиву значений определённого свойства?

    0xD34F
    @0xD34F Куратор тега JavaScript
    Сортируем существующий массив:

    messages.sort((a, b) => {
      [ a, b ] = [ a, b ].map(n => sortableLanguages.indexOf(n.language));
      return a === -1 ? 1 : b === -1 ? -1 : a - b;
    });

    Собираем отсортированный новый:

    const sorted = (arr, key) => arr
      .map(n => [ n, key(n) ])
      .sort((a, b) => a[1] - b[1])
      .map(n => n[0]);
    
    
    const order = Object.fromEntries(sortableLanguages.map((n, i) => [ n, i + 1 ]));
    const sortedMessages = sorted(messages, n => order[n.language] || Number.MAX_SAFE_INTEGER);
    
    // или
    
    function sorted(arr, order, key) {
      const ordered = new Map(order.map(n => [ n, [] ]));
      const unordered = [];
    
      arr.forEach(n => (ordered.get(key(n)) || unordered).push(n));
    
      return [].concat(...ordered.values(), unordered);
    }
    
    
    const sortedMessages = sorted(messages, sortableLanguages, n => n.language);
    Ответ написан
    1 комментарий
  • Можно ли проверять наличие console.log при коммите в phpstorm?

    @RidgeA
    Ответ написан
    Комментировать
  • Стоит ли заниматься программированием в моем возрасте?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    программист - профессия для молодого

    Это дискриминация. Причём ничем не отличающаяся от половой или расовой.
    Ответ написан
    1 комментарий
  • Какой язык программирования выбрать для данного проекта?

    Adamos
    @Adamos
    Для стартапа с ничем не гарантированным будущим - тот, на котором вы готовы быстрее и дешевле всего сделать MVP.
    Ни в коем случае не тратя средств и времени на проработку масштабирования и прочих проблем роста.
    Потому что именно решение проблем роста до того, как они появились, лишает стартап всяких шансов начать этот рост.
    Ответ написан
    Комментировать
  • Проблема с запуском в командной строке?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    В командной строке вы используете Java 8, а компилировали программу с помощью Java 12. Либо запускайте тоже с помощью Java 12, либо при компиляции укажите параметр -target 8.

    Если используете IDEA, сделать это можно так:
    9oJXg.png

    А если используете Maven, так:
    <project
      xmlns="http://maven.apache.org/POM/4.0.0" 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    
      <properties>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
      </properties>
      ...
    </project>
    Ответ написан
    Комментировать
  • Веб-дизайнер-фрилансер после 35 лет?

    SayMAN83
    @SayMAN83
    Работаю в IT
    Мне 36. Жена и двое детей. Работал в саратове. Зарабатывал неплохо, но семью тянуть все равно было мало. Так вышло что на работе "пнули" за открытое резюме на hh. Но на резюме сразу же откликнулись из Москвы и предложили мне релокацию. Собеседование по скайпу прошёл. Сейчас работаю в Москве. Скоро семью полностью перевезу. В вашем случае возраст и семья не помеха. Тот кто хочет ищет возможности, а кто не хочет, ищет причины.
    Ответ написан
    3 комментария
  • Как отслеживать ширину экрана?

    0xD34F
    @0xD34F Куратор тега Vue.js
    data: () => ({
      width: 0,
    }),
    computed: {
      itemSize() {
        return this.width > 700 ? 46 : 56;
      },
    },
    methods: {
      onResize() {
        this.width = window.innerWidth;
      },
    },
    created() {
      this.onResize();
      window.addEventListener('resize', this.onResize);
    },
    beforeDestroy() {
      window.removeEventListener('resize', this.onResize);
    },
    
    // или
    
    data: () => ({
      itemSize: null,
    }),
    created() {
      const mql = window.matchMedia('(max-width: 700px)');
      const onChange = () => this.itemSize = mql.matches ? 56 : 46;
      onChange();
      mql.addEventListener('change', onChange);
      this.$on('hook:beforeDestroy', () => mql.removeEventListener('change', onChange));
    },

    :item-size="itemSize"
    Ответ написан
    1 комментарий
  • Как найти разработчика мобильного приложения в стартап?

    newross
    @newross
    Product owner
    Какой смысл привлекать разработчика, не имея на руках ни бизнес модели, ни клиентов, ни хоть более-менее проработанного видения проекта?
    Сама по себе идея - ничто. Не стоит ничего, кроме затраченных впустую усилий. Адекватный разработчик даже слушать не станет спич с голой идеей.
    Про инвестора тоже какой-то бред. Вряд ли найдется дурак, который будет вкладывать в голую идею под обещания основателя заниматься маркетингом и анализом конкурентов.
    В общем сначала надо поработать над проектом, а потом уже разработчиков искать.
    Ответ написан
    Комментировать
  • Как найти разработчика мобильного приложения в стартап?

    qlkvg
    @qlkvg
    python backend developer
    Ответ написан
    Комментировать
  • Зачем нужны анонимные классы в java и как к ним обратиться?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Это у вас не анонимный класс, а внутренний класс. Обращаться к нему можно из любого места внешнего класса, ну и из самого себя.
    А анонимный класс, как следует из названия, имени не имеет. И создается например из интерфейса, реализуя его методы на месте.

    Внутренние классы могут быть закрытыми (private/protected) по умолчанию и видны будут только из внешнего класса, либо быть публичными (public static) и быть доступны всему приложению. Обычно используются, чтобы не раздувать структуру файлов-классов и для внутреннего применения в качестве временных хранилищ и оберток.

    Анонимный же класс создается на месте использования и служит для применения в конкретном месте приложения. В примере ниже мы в переменную threadзаписываем инcтанс нового класса, наследуемого от Thread с перегруженным методом run

    class MyThread  
    { 
        public static void main(String[] args) 
        { 
             // Создаем расширение стандартного класса Thread с переопределением метода run()
             Thread thread = new Thread()
            { 
                public void run() 
                { 
                    System.out.println("Child Thread"); 
                } 
            }; 
            thread.start(); 
            System.out.println("Main Thread"); 
        } 
    }
    Ответ написан
    Комментировать
  • GIT-хостинг - удобный, простой, тупой - есть ли?

    Adamos
    @Adamos
    Вы, простите, свой код пишете - в чем? Введите в гугле это название + GitLab - увидите, что маетесь дурью, ища возможности заливать код "бразуером".
    Ответ написан
  • Можно ли начинать с питона?

    Jump
    @Jump
    Системный администратор со стажем.
    Можно ли начинать с питона?
    Можно.

    питон не расскажет тебе что такое память компа, как лучше писать код и т.п
    Язык программирования это инструмент, как молоток, или топор. Он и не должен ничего рассказывать.
    Будет странно если топор начнет читать плотнику лекции по материаловедению и технологии строительства.

    вот вопрос, неужели чтоб на нем начать писать мне надо сначала изучить C/C++?
    Нет.
    Изучить С нужно если вы собрались писать код на C.

    И так ли сложно понимать другие языки после питона?
    Без разницы. Люди умеющие водить машину без проблем умудряются работать пилотами, машинистами, и капитанами морских судов, и даже ездят на велосипеде Им никак не мешает тот факт, что начали они с управления автомобилем.
    Ответ написан
    Комментировать
  • Можно ли начинать с питона?

    saboteur_kiev
    @saboteur_kiev Куратор тега Python
    software engineer
    Вам - нельзя.
    Будете постоянно метаться между языком, библиотеками, фреймворками, а в конечном счете еще и браузером, потому что результат скорее всего будет там, и будет тот же самый html/css/js только через питоновский фреймворк.

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

    P.S. Изучив один язык, всегда проще изучать другой. Но для этого нужно его изучить, а не попрыгать по верхам.
    Ответ написан
    Комментировать
  • Разместил резюме на позицию junior front-end, не понимаю что не так в нем?

    samodum
    @samodum
    Какой вопрос - такой и ответ
    >"Программы: PhpStorm, Atom"
    Прям коробит.
    Это IDE. Да, это программы, но так говорят бухгалтерши. Мы же программеры и для нас это не программы, а IDE, инструмент.
    Ответ написан
    1 комментарий
  • Есть ли смысл переходить на другой стек?

    1) Уходить с удаленки, которую ты смог найти на опыт джуна - это прямо мега глупо. Надо хотя бы получить 9-12 месяцев работы, тогда тебя уже начнут рассматривать, как разраба.

    А пока HR-видит, что ты через месяц слился и думает: "Да ну его нахер, то ли он конфликтный, то ли он "мамкин айтишник, который хочет 100к со старта", то ли он рукожоп"

    т.е. этот опыт лучше вообще убрать из резюме. (ну это так намек)

    2) Удаленку без опыта реальной разработки на уровне Джуна - очень сложно найти. Будь ты хоть JS, хоть PHP, хоть Java разработчик. Тут дело не в стеки.

    3) В идеале, тебе надо получить строчку в трудовую, что работал программистом условно 9 месяцев (хоть на чем) - после этого, уже и удаленку можно будет найти проще, либо уже уезжать на офер в СПБ, Москву или другой город
    Ответ написан
    Комментировать