• Как из цикла передать значения нескольким элементам?

    @WorksDens
    JustDen
    Проблема текущего кода заключается в том, что ты перезаписываешь значение атрибута data-wow-delay для всех элементов в списке advantageItems NodeList на каждой итерации цикла for, в результате чего все элементы имеют одинаковое значение 1,2 секунды. Чтобы добиться увеличения значений атрибута data-wow-delay для каждого элемента, следует переместить цикл for внутрь функции forEach и присвоить значение текущему элементу в цикле.
    Таким образом ты итерируешь каждый элемент в списке узлов advantageItems и присваиваете каждому элементу свое значение wowDelay, используя индекс текущего элемента в цикле.
    Ответ написан
  • Почему display: flex ломает textbox?

    @WorksDens
    JustDen
    Эта скорее всего, связана с тем, что свойство display: flex заставляет элемент формы стать flex container, что означает, что его дочерние элементы будут рассматриваться как flex items. В результате div с атрибутом contentEditable занимает всю ширину контейнера и становится кликабельным.

    Одним из решений этой проблемы может быть задание div с атрибутом contentEditable определенной ширины, чтобы он занимал только то пространство, которое ему необходимо. Кроме того, можешь установить свойство display div в inline-block, чтобы он не занимал всю ширину контейнера.

    Еще можно обернуть в div и установить в качестве flex-элемента вместо элемента формы. Таким образом, на div не будут влиять flex-свойства элемента формы.

    Также можешь добавить свойство pointer-events: none к родительскому элементу, чтобы сделать его не реагирующим на щелчки, это сделает дочерний элемент реагирующим на щелчки.

    В общем, есть несколько различных способов решения этой проблемы, но главное убедиться, что div с атрибутом contentEditable занимает только необходимое ему пространство, а не всю ширину контейнера.
    Ответ написан
  • Как выполнить динамические роуты с подстановкой slug в Nuxt 3?

    @WorksDens
    JustDen
    Чтобы выполнить динамическую маршрутизацию с подстановкой slug в Nuxt 3, тебе нужно внести несколько изменений в вашу текущую настройку.

    Создайте новый файл в каталоге /pages вашего проекта Nuxt, например /pages/blog/_slug.vue. Этот файл будет обрабатывать маршрутизацию постов вашего блога, используя slug вместо ID.

    В разделе сценария этого нового файла тебе нужно будет использовать хук useDirectusItems из дополнения nuxt-directus для получения данных о записях блога из бэкенда. Вместо метода getItemById тебе нужно будет использовать метод getItems и передать объект filter для фильтрации данных на основе slug.
    <script>
    const { getItems } = useDirectusItems();
    const route = useRoute();
    const post = await getItems({
      коллекция: "blog",
      params: {
        фильтр: { slug: route.params.slug }
      }
    });
    </script>

    В файле nuxt.config.js необходимо обновить свойство generate для обработки динамической маршрутизации для нового файла /_slug.vue.

    generate: {
      routes: function() {
        return axios.get('http://your-backend-url/items/blog')
          .then((res) => {
            return res.data.data.map((post) => {
              return '/blog/' + post.slug
            })
          })
      }
    },

    Наконец, тебе нужно будет обновить ссылки в проекте Nuxt, чтобы они указывали на новые маршруты, используя slug, а не ID.
    После этих изменений посты вашего блога должны быть доступны с использованием slug в URL, а маршрутизация будет осуществляться динамически на основе данных из бэкенда.
    Ответ написан
  • Else if не работает хотя до него все работает?

    @WorksDens
    JustDen
    Трудно определить точную проблему без дополнительной информации о коде и контексте, в котором он используется. Однако одна из потенциальных проблем может заключаться в том, что оператор else if не связан должным образом с начальным оператором if. Для того чтобы оператор else if работал как положено, он должен непосредственно предшествовать оператору if, без какого-либо дополнительного кода между ними. Другая потенциальная проблема может заключаться в том, что условия в операторах if и else if не выполняются, в результате чего код в этих блоках не выполняется.
    Ответ написан
    Комментировать
  • Как правильно преобразовывать данные из БД в структурированные объекты?

    @WorksDens
    JustDen
    Функция create_user работает так, как ожидалось. Она создает нового пользователя с заданным именем и электронной почтой и присваивает ему уникальный ID. Функция также проверяет, что электронная почта имеет правильный формат, и возвращает сообщение об ошибке, если это не так.

    В функции get_user пользователь извлекается по его ID и возвращается в виде словаря. Функция также проверяет, существует ли пользователь с заданным ID, и возвращает сообщение об ошибке, если нет.

    Функция update_user обновляет имя и email пользователя с заданным ID. Она также проверяет, что электронная почта имеет правильный формат, и возвращает сообщение об ошибке, если это не так.

    Функция delete_user удаляет пользователя с заданным идентификатором. Она также проверяет, существует ли пользователь с заданным ID, и возвращает сообщение об ошибке, если это не так.

    В целом, функции работают так, как задумано, и эффективно справляются с ошибками.
    Ответ написан