• Nuxt.js и $ref, почему не видит мой ref?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    покажите код с элементов в шаблоне
    или забегая вперёд сделайте так
    this.$refs.testElem.$el.offsetHeight
    Ответ написан
    Комментировать
  • Почему в action не передается второй параметр?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    Потому что экшены не умеют принимать 100500 параметров. Параметр должен быть 1 - объект с 100500 свойствами.

    P.S. Я хз почему так происходит, баг это или фича, но это так. В глубинку я не залазил и не изучал. У меня есть догадки лишь, связанные с тем, что 1й аргумент всегда зарезервирован под стор. Да и объектами выглядит лучше, не нужно порядок соблюдать и их можно так же удобно как и аргументы вывести
    updateQuantity: ({commit}, {lalala, id}) => {
                commit('setData', {lalala, id});
            }
    Ответ написан
    Комментировать
  • А есть ли jQuery height() чистом js?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    Если элемент скрыт(display: none) - то его высота равна 0, jquery ни jquery.
    Если элемент скрыт просто визуально(opacity и т.п.), то всегда покажется реальная высота. Исключение - это transform: scale.

    Или же, высота может быть 0, но благодаря padding и border высота есть. Нужно просто учитывать эти свойства при получении размера, просто тупо сложив

    Дайте код
    Ответ написан
  • Как запустить $loading Nuxt/Vuex?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    Прочитать документацию
    https://nuxtjs.org/api/configuration-loading
    Ответ написан
    Комментировать
  • Практические задания по vuejs?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    Используя фейковый генератор данных https://jsonplaceholder.typicode.com/ или ему подобные, на ваш вкус и выбор. Создайте на его основе простой новостной сайтик.

    Используя axios, vuex
    Ответ написан
    3 комментария
  • Почему не выводятся на экран числа массива с помощью цикла for?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    Не нужно делать каждый раз перезапись DOM. Делайте это 1 раз, но в процессе работайте с переменной.

    https://jsfiddle.net/adpmb230/
    Ответ написан
    Комментировать
  • Как увеличить время жизни Cookie?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    т.к. с Coockie я раньше не работал
    ну так может загуглить php cookie?
    Много ума не нужно, просто перезаписать куку с нужной вам датой
    Ответ написан
    Комментировать
  • Vue.js и Сео дублируется ли код для поисковиков?

    bootd
    @bootd Куратор тега HTML
    Гугли и ты откроешь врата знаний!
    h1 можно использовать в любых количествах, но по делу. Самый яркий пример, который я привожу - это сайт яндекса.
    Только взгляните:
    5d68cdf55b143229005261.jpeg
    20 заголовков h1 на главной странице!!!!! Наверно yandex дураки и ничего не понимают в индексации сайтов и в целов в вёрстке.

    Интересно, почему они так сделали?? Может потому что они выделили ключевые разделы на своей странице?
    Наверное всё таки да и сделали правильно. Сеошники вообще живут в каменном веке, они не знают, что такое html5, они не знают, что такое SPA и как с ним работать, они не знают что такое семантика. Я всегда их терпеть не мог.

    А если крутить ниже, подгружая другие секции, то кол-во h1 увеличивается
    Ответ написан
    4 комментария
  • Можно ли преобразовать html в картинку?

    bootd
    @bootd Куратор тега HTML
    Гугли и ты откроешь врата знаний!
    Ответ написан
    Комментировать
  • Зачем нужно изучать основы вёрстки, если есть webflow?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    Вопрос из разряда, зачем изучать математику, если есть калькулятор)))

    Ничто и никогда, никакой конструктор не позволит вам создать CRM, соц. сеть, веб игру, свой гитхаб, какие либо сервисы(тот же самый webflow) и херову тучу других продуктов. Проще говоря, вы уже не сможете создать что-то уникальное, что делают другие, знающие веб языки.

    А так же, создание просто сайта визитки, магазина при помощи конструктора, это удобно и часто быстро. НО!!!

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

    Все могут сами что-то делать для себя, не тратя свои средства, но время и силы, потраченные на создание лично, далеко не всегда равны тому, что бы просто взять и купить или заказать
    Ответ написан
    Комментировать
  • Почему выскакивает ошибка scss при запуске проекта vue?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    Пути у шрифтов указаны не правильно
    Ответ написан
    Комментировать
  • Обработка catch при async await?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    Смотря как ты отображать собрался эти ошибки. Я обрабатываю ошибки в компонетах, а не в хранилище, т.е. там, где вызываю метод из хранилища.

    За свой опыт придумал 3 реализации:
    1) Создать миксин с методом показа ошибок
    2) В самом обработчике ajax сделать обработку ошибок, если у тебя axios то вообще фигня делов, но, т.к. это плагин, то внутри плагина нет возможности достучаться до компонентов и каким-то образом вывести какое нибудь окошко, подойдёт лишь для console.log и т.п. обработок ошибок.
    3) Основан на примере 2. В самом обработчике ajax сделать обработку ошибок так, что бы при ошибке в запросе, ошибка записывалась в store, создать компонент, в котором будет реализовано отображение ошибок из store, чистить store, после показа всех ошибок, например, по таймеру.

    Мой личный опыт: я юзаю пока что 1й вариант, в миксине я юзаю вызов из прототипа метод с показом кастомных алертов. Минус подхода в том, что нужно импортировать миксин и прописывать в catch метод вызова обработчика ошибок, передовая в него error из catch/

    Думал думал и придумал вариант 3, но ещё не реализовывал.
    Ответ написан
    Комментировать
  • Почему фрейм выводится как строка?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    Потому что html выводится во vue иначе!!
    <div 
      class="card-content" 
      v-html="iframe"
    />
    Ответ написан
    1 комментарий
  • Как подключить jQuery через es6?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    Комментировать
  • Почему не работает transition?

    bootd
    @bootd Куратор тега CSS
    Гугли и ты откроешь врата знаний!
    Запятая не там:
    transition: background 1s ease, transform 1s ease;
    Ответ написан
    Комментировать
  • Как спроектировать крупное приложение на vue?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    Хорошо бы знать, что у вас за проект и какие задачи он решает.
    на выходе мы получим огромный бандл из всех модулей
    - это почему же так?
    А webpack для чего придумали? vue cli 3 вроде как из коробки вместе в webpack уже умеет всё разделять на модули, ну и вам самим никто не мешает сделать полностью модульную структуру так, как вам хочется, вручную настроив сборку проекта.

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

    Есть ещё nuxt.js в котором сделано ещё больше для модульности, там модули все загружаются тогда, когда они реально нужны. Т.е. у вас 10 страниц, у каждой своя логика, на пол мегабайта. При заходе на сайт, логика 10 страниц не будет загружена, а лишь тогда, когда вы зайдёте на страницу. Ну и опять же, никто не мешает и там добавить своих правил для webpack, если что-то не устроит. Следовательно, если определённому типу менеджеров нужна лишь определённая часть сайта, то зайдя на нужную ему страницу он загрузит логику этой страницы, но не десятка других.

    А верстать всё это вы как собираетесь?
    А раз это мини сайты в одном большом сайте, как вы собираетесь делать общие стили и компоненты?

    То есть, для каждого модуля свои vuex, router
    - ну а кто мешает вам на файлики разбить хранилище и роутер?

    У vuex есть свойство modules - куда и импортируем модуль хранилища
    У Router по сути тоже самое https://stackoverflow.com/questions/46590760/vue-j... вот статья для примера.

    Ну и всё же, даже если всё вот так разделить, где целиком отдельные spa друг от друга, а как вы связывать их собираетесь 1 целое?
    Типа написали плагин и что, теперь его во все 10 разных модулей подключать?
    Типа, есть шапка, одна на весь сайт, создал компонент, что, тоже ходить и в каждый подключать?

    Ну, так должно же быть у них что-то общее между собой, делающее всё это единым сервисом.
    Как бы да, есть яндекс, который сумел создать единый UI для своих проектов, но и проекты у него никак не связаны между собой, а если и связаны, то не сайты друг с другом, а как бы общая база яндекса связана с проектами.
    Как я понял, в вашем примере, модули - это яндекс музыка, карты, новости и т.п. Зачем всё это объединять в 1 проект? ИМХО Если я так понял, то нужно не просто отдельные модули делать, а отдельные сайты.

    К сожалению, я слабо понимаю, что у вас там за ВАСЯ иентерпрайз, что бы в целом посидеть и подумать + я так и не услышал в вашем вопросе доводов архитектуры ваших коллег.
    Ответ написан
    7 комментариев
  • Что такое callback?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    https://jsfiddle.net/nzbgr9fd/
    Ну так setTimeout - это отложенная функция, ассинхронная. Вызывайте колбек внутри таймер, а не следом за ним.
    Ответ написан
  • Можно ли обратится в js к элементу по типу?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    Правильнее будет сказать не по типу, а по атрибуту))

    document.querySelectorAll('[type="email"]')
    document.querySelectorAll('[type="text"]')
    document.querySelectorAll('[type="tel"]')
    // и т.п.
    Ответ написан
    Комментировать