• Uncaught TypeError: Cannot read properties of undefined (reading 'name'), как исправить?

    @zordec
    <p>Бренд: {data?.brand?.name}</p>
    Если не будет название производителя то это не повлияет на выполнение кода
    Ответ написан
    Комментировать
  • Laravel Почему не работает отношение один к одному?

    @zordec
    покажите вашу миграцию avatar
    должно быть так
    $table->unsignedBigInteger('user_id');
    $table->foreign('user_id')
              ->references('id')->on('users')
              ->onDelete('cascade');

    Этот метод в avatar модель
    public function user()
        {
            return $this->belongsTo(User::class);
        }

    Чтобы получить аватар в контроллере
    $user = User::find(1);
    $firstUserAvatar = $user->avatar->img;

    Ну вроде как то так должно работать, необходимо попробовать.
    Ответ написан
    Комментировать
  • Как вывести alert если пользователь ввел буквы в input а не цифры?

    @zordec
    Если принимать из простого HTML инпута то всё уже придуманно и нельзя ввести буквы в инпут с цифрами еще и мин и макс значения можно указать.
    <input type="number" name="quantity" min="1" max="5">

    if(typeof(input.value) == 'number'){
    alert('вы прошли');
    }else if(typeof(input.value) == 'string'){
    alert('вводить можно только буквы');
    }
    Ответ написан
    Комментировать
  • Prompt условие для пустого значения и для отмены?

    @zordec
    Prompt -отмена возвращает null
    Prompt -ок без ввода данных возвращает пустую строку
    let question =  prompt('Как вас зовут?')
    if(question === null || question === ""){
        console.log('Привет незнакомец')
     } else {
    console.log('Привет ' + question)
    }
    Ответ написан
    Комментировать
  • Как сравнить два объекта?

    @zordec
    function deepEqual(obj1, obj2) {
      if (typeof obj1 !== "object" || typeof obj2 !== "object") {
        return false;
      }
      if (obj1 === undefined || obj2 === undefined) {
        return false;
      }
      if (obj1 === null || obj2 === null) {
        return false;
      }
      let obj1Keys = Object.keys(obj1);
      let obj2Keys = Object.keys(obj2);
      if (obj1Keys.length !== obj2Keys.length) {
        return false;
      }
      for (let i = 0; i < obj1Keys.length; i++) {
        if (obj2Keys.includes(obj1Keys[i]) === false) {
          return false;
        }
      }
      for (let i = 0; i < obj1Keys.length; i++) {
        if (typeof obj1[obj1Keys[i]] === "object") {
          return deepEqual(obj1[obj1Keys[i]], obj2[obj1Keys[i]]);
        }
        if (obj1[obj1Keys[i]] !== obj2[obj2Keys[i]]) {
          return false;
        }
      }
      return true;
    }
    Ответ написан
    Комментировать