Задать вопрос
  • Почему Unhandled Exception, если оно внутри try/catch?

    Maksclub
    @Maksclub Куратор тега PHP
    maksfedorov.ru
    У вас Exception из метода resolveClass() не ловится, тк его вызов находится не в секции try{}

    try {
       // тут вызов кода, который может выбить исключение А
    } catch (ExceptionA $e) {
        // если A вылетело, то попадаем в отлове сюда
        // дальнейший код, который может кидать исключения, надо обрабатывать отдельно, 
        // тк тут УЖЕ произошел отлов исключения из секции try, а новые вызовы надо по новой покрывать
    }


    Вообще: управление программой через исключения — плохая практика. Например вот такими вложенными обертками и риск поймать непредвиденное исключение выше
    Ответ написан
    2 комментария
  • Как отправить ссылку на репозиторий GitHub на электронную почту?

    Делаем проект публичный, копируем ссылку репозитория гитлаба или гитхаба, заходим в свою почту, пишем почту работодателя и отправляем письмо со ссылкой на гит.
    Ответ написан
    2 комментария
  • Как освоить vue.js?

    0xD34F
    @0xD34F Куратор тега Vue.js
    Читая документацию - сложно полностью понять её.

    Это потому что вы js не знаете. Если знать язык - понимать в документации нечего, всё становится ясно на ходу.

    Может ли это означать, что frontend не мое

    Может.

    либо это стандартная ситуация и стоить продолжать?

    Стандартная. Для не знающих js.

    Освоение фреймворков без знания языка - прямая дорога к превращению в говнокодера. Который никому на рынке труда конкуренции не составит. Если ваша цель такая - конечно продолжайте.

    Короче, хотите освоить vue - освойте js.
    Ответ написан
    Комментировать
  • Нужен ли Vuex в Vue 3?

    AlbertName
    @AlbertName
    Senior Javascript Developer
    Однозначно ответить на этот вопрос нельзя. Зависит от приложения. К тому же сейчас для третьего вью по дефолту pinia является стором.

    Но и при помощи композишн можно организовать подобие vuex стора, ипмпоритируя ref и reacrive из vue.

    Можно сделать на основе этого кастомный хук, который будет являтся по логике модулем стора. Как это реализовать, есть примеры в сети.

    Самое главное, это понять для чего это нужно использовать. Если в простом изложении, то чтобы организовать связь между компонентами минуя пропс. Связь с реактивными данными. В случае изменения данных в одном месте (клмпоненте), другой компонент отреагирует на это изменение.
    Ответ написан
    2 комментария
  • Как решить проблему с github?

    sergey-kuznetsov
    @sergey-kuznetsov Куратор тега Git
    Автоматизатор
    Проект скачивается командой
    git clone адрес_проекта
    При этом связь с гибхабом настраивается автоматически
    Ответ написан
    Комментировать
  • Как прокинуть axios baseURL vue3?

    @wonderingpeanut
    Комментировать
  • Всегда ли нужен request body когда используется метод POST?

    karabanov
    @karabanov
    Системный администратор
    На случай, когда нет тела запроса, есть метод GET
    Ответ написан
    3 комментария
  • Какую структуру проекта laravel выбрать?

    seven5674
    @seven5674
    Старый я уже что бы что-то в себе менять
    ИМХО велосипед
    для крупных проектов lavarel это чистый backend

    laravel это в первую очередь программирование по соглашениям - научитесь сначала делать правильно а потом уже будите ерундой страдать
    Ответ написан
    3 комментария
  • Какую структуру проекта laravel выбрать?

    @kandrash
    Кратко о себе
    Я плохо отношусь. ИМХО это совершенно излишне. Вы не из Yii лучших практик набрали?) Те же модели. База то у вас одна. В Admin вы добавили модель юзера, а в Pub забыли. Дублировать её там будете? Или кучу кода вынесете в общие папки, а там оставите контроллеры? Тогда не проще ли в Controllers поддиректории создать? app/Controllers/Admin app/Controllers/Pub. Тот же Auth, Login и прочее. Опять дублируем совершенно одинаковый функционал?
    Ответ написан
    Комментировать
  • Какую структуру проекта laravel выбрать?

    @romicohen
    Системный Архитектор
    Иногда это оправданно, иногда нет, от проекта зависит.

    Как минимум - попробуй, ничего не потеряешь же)) заодно получишь наглядный опыт создания сервис-провайдеров :)
    Ответ написан
    Комментировать
  • Как в Laravel правильно создать таблицу всего для одной записи?

    @lil_koi
    лучший из худших
    а почему нельзя в .ENV вынести эти данные?
    Ответ написан
    2 комментария
  • Почему у стрелочной функции из объекта контекст виндоу?

    sergiks
    @sergiks Куратор тега JavaScript
    ♬♬
    На learn.javascript, например, неплохо написали:
    Стрелка => ничего не привязывает. У функции просто нет this.
    При получении значения this – оно, как обычная переменная, берётся из внешнего лексического окружения.


    В вашем примере с литералом объекта можно добавить для понимания:
    const obj = {
      w() {
        console.log('w', this);
      },
      x: function () {
        console.log('x', this);
      },
      y: this,
      z: () => {
        console.log('z', this);
      },
    };
    
    obj.w(); // obj
    obj.x(); // obj
    console.log('y', obj.y); // Window
    obj.z(); // Window


    Запись литерала объекта не создаёт свой контекст: на момент записи this тот же, что и снаружи:
    const a = this; // Window
    const obj = {
      b: this, // тоже Window 
    }
    
    a === obj.b // true
    Ответ написан
    1 комментарий
  • Docker Desktop потребляет много ресурсов, грузит процессор и оперативную память. Что делать?

    lp1641
    @lp1641 Автор вопроса
    Junior Front-End (React)
    Сперва нашёл .wslconfig, там уменьшил количество ресурсов, вроде стало немного лучше, а потом случайно выключил WSL2 в настройках Docker и заметил что нагрузка снизилась.
    Потом ещё поэкспериментировал и составил список. Потому что для слабых устройств это может быть критично.

    - Использовать Hyper-V вместо WSL2. Это происходит само по себе если в настройках отключить использование WSL2.

    - Отключить отправку анонимной статистики.

    - Отключить автоматическую проверку и скачивание обновлений.

    - На Hyper-V Docker практически не грузит систему если его запускать один раз, если его закрыть и открыть заново он начинает грузить. После запуска контейнеров можно убить в диспетчере задач процесс Docker который нагружает CPU. Без того процесса всё продолжило работать нормально и ничего не закрылось. Причины такого поведения не ясны.

    - Настроить ресурсы выделяемые для Hyper-V на минимум, или увеличить если это нужно для содержимого контейнера. Но приложениям на NodeJS хватает и минимум ресурсов. Для WLS2 ресурсы настраиваются в папке пользователя Windows в файле .wslconfig, WLS2 грузит систему сильнее и по ощущениям работает медленнее не смотря на то что в настройках докера написано о том что это более производительное решение.

    - Благодаря этим действиям Docker начинает работать быстрее, почти не потребляет CPU и RAM, и это хорошо. Тестировалось с контейнерами где была база данных и бекенд на NodeJS.

    Всё что здесь описано личный опыт, Docker Desktop был версии 4.7.0, не факт что ваш опыт будет совпадать с моим.
    Ответ написан
    1 комментарий
  • Почему style background vue3 не применяется?

    0xD34F
    @0xD34F Куратор тега Vue.js
    нужно создать 6 блоков с разными цветами

    :style="{ color: bgColor }"

    Цветами ЧЕГО? Свойство color - это цвет текста, никакого текстового содержимого в блоках нет.

    Делаю как в документации

    v-for="(index, bgColor) in colorArray"

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

    dima9595
    @dima9595
    Junior PHP
    Вопрос философский и зависит от различных факторов. Иногда, действительно, легче написать какой-то компонент самому. Особенно если сайт простой. А вот для больших проектов, где требуется производительность, модульность, к примеру, можно и подключить готовую библиотеку.

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

    Лично я использую библиотеки для более-менее крупных проектов, которые со временем будут только расширяться. Для одностраничников 50/50. Всё зависит от требуемой скорости разработки.
    Ответ написан
    Комментировать
  • Должен ли программист при получении заказа выполнять и роль девопса?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Должен кому? Долг перед заказчиком определяется пунктами договора. Если вы не соглашались делать работу devops'а, то и не должны её делать. Но лично я считаю, что должен самому себе уметь делать решения под ключ. Правда, я за это всегда накручивал ценик равный оплате разработчика бэкенда, фронтенда, админа, аналитика и менеджера проекта.
    Ответ написан
    3 комментария
  • Рефакторинг new Vue() в vue 3?

    Попробуйте документацию:
    https://v3-migration.vuejs.org/breaking-changes/gl...
    https://vuejs.org/api/application.html#createapp

    (а подход с созданием нового приложения внутри компонента я бы пересмотрел)
    Ответ написан
    1 комментарий
  • Что может случиться после перехода по вредоносной ссылке?

    @rPman
    * деанонимизация, как минимум сайт узнает ваш ip адрес (а из него примерные географические координаты), очень часто об этом забывают пользователи telegram и других анонимных чатов
    * спам через уведомления, сайты запрашивают разрешение на прием уведомлений (иногда циклически, пока не нажмешь да) и через некоторое время у вас будут всплывающие окна с картинками (реклама)
    * атака уязвимых веб сервисов где вы авторизованы - click jacking (вслепую заставлять нажимать кнопки на авторизованном сайте, рисуя его со 100% прозрачностью в iframe, пододвигая под курсор пользователя), cross site scripting (выполнять действия на сайтах вызывая напрямую там запросы)
    * есть опасность доступа к буферу обмена, дело в том что по стандарту, браузер не имеет прямого доступа к буферу, пока пользователь не совершит действие на сайте (клик мышкой), заставить пользователя это сделать не сложно, а содержимое буфера будет у злонамеренного сайта, а что там у вас в буфере бывает - иногда очень интересно
    * фишинг - подсовывать визуальную копию других сервисов, требовать авторизацию и таким образом выуживать логин пароль
    * многие люди разрешают (поведение браузеров по умолчанию) автоматическую загрузку файлов в каталог загрузки, злонамеренный сайт может подсунуть туда легитимное приложение, зараженное трояном, в надежде что пользователь когда-нибудь запустит его, увидев в папке загрузки (там всегда бардак и никто не запоминает откуда что скачали), на самом деле это одно из самых опасных действий, так как переводит операции из браузерной песочницы в операционную систему, а там уязвимости опаснее
    ...
    Ответ написан
    1 комментарий