[ВАЖНО - Читай описание] Vue.js Приложение мессенджер (messenger application)

Поделиться
HTML-код
  • Опубликовано: 22 окт 2024

Комментарии • 77

  • @MrLutor
    @MrLutor 4 года назад +9

    Нереално крутой канал! Тьма полезной инфы, объясняешь как корешу, за это отдельное спасибо, уютно )) жду вторую часть видео, было б хорошо, если б там ещё и деплой на обычный сервер был;)

    • @TheMeo0w
      @TheMeo0w 4 года назад +1

      А чего там деплоить-то? npm run build, и папку dist на обычный сервер.

    • @MrLutor
      @MrLutor 4 года назад +1

      Ну это супер просто)

  • @HTMLHarbor
    @HTMLHarbor 4 года назад +6

    Спасибо большое за твой труд. Получилось:)) Жду следующей части;)

    • @gofrontend2220
      @gofrontend2220  4 года назад +3

      Ибрагим Алимжанов отлично!

  • @abylaym4157
    @abylaym4157 4 года назад +1

    Спасибо за урок, ждём новых проектов на vue

  • @goshana1987
    @goshana1987 4 года назад

    Здравствуйте. Отличный контент. Спасибо вам! Жду новых видео.

  • @sapolio1538
    @sapolio1538 4 года назад +1

    в 1:05:04 можно тогда спокойно передавать this.SET_MESSAGE_TO_CHAT(user)
    а в сторе принимать его же и делать axios.put(chatstUrl + user.id, user)

  • @sapolio1538
    @sapolio1538 4 года назад +3

    Для тех, кому было, как мне, лень доставать мак из рюкзака (десять раз уже пожалел в самом деле), открою очевидное:
    "start": " somewhat --watch & npm run serve" не сработает не вендах, потому что одиночный амперсанд для винды не повод не дожидаться окончания вашего вотча )
    Для таких ленивцев есть полезный (не один такой он) пакетик.
    Делай раз в депенденсиз:
    "npm-run-all": "^4.1.5"
    Делай два в скриптах:
    "start": "npm-run-all --parallel json serve",
    "json": "json-server --watch db.json",
    "serve": "vue-cli-service serve",
    Хотя... можно было поставить server --watch в конец?.. Хм...

    • @gofrontend2220
      @gofrontend2220  4 года назад

      Есть еще такая штука: www.npmjs.com/package/concurrently

    • @ArankFreedom
      @ArankFreedom 4 года назад

      зачем ставить пакет если моно использовать &&

    • @gofrontend2220
      @gofrontend2220  4 года назад

      AndreyGovorukhin не везде && прокатит. Не на всех ОС

    • @ArankFreedom
      @ArankFreedom 4 года назад

      @@gofrontend2220 на винде норм

  • @igorkulibaba7287
    @igorkulibaba7287 4 года назад

    ДЯДЬКА ты круто объясняешь!!!

  • @gofrontend2220
    @gofrontend2220  Год назад +1

    ! ВАЖНО - Читайте описание к видео ! 🔥🔥🔥👆👆👆

  • @максимсоловьев-п4ж

    Прошу подсказать. Какая тут версия Vue используется - 2 или уже 3?

  • @sudo1384
    @sudo1384 4 года назад +2

    Спасибо за такой труд, сможете сказать когда 2 часть очень жду

  • @tontontonic
    @tontontonic 2 года назад

    а какая разница, передавать params:id в роут или передавать query? для чего нужно одно, а для чего другое?

  • @TheMeo0w
    @TheMeo0w 4 года назад

    Очень интересная подача материала! Смотрится легко, понятно, с удовольствием.
    Но у меня есть пара вопросов:
    1) Почему вы поместили метод SEND_MSG_TO_CHAT во Vuex store? Ведь этот метод никак не меняет state (не вызывает мутаций).
    2) Кроме того, первым параметром этого метода вы указываете {commit}, хотя в теле метода этот commit никак не используете - ESLint такое не пропустит. В таких крайних ситуациях, не лучше-ли использовать в качестве первого параметра нижнее подчёркивание (символ "_"?
    Поправьте, если я не прав.

    • @gofrontend2220
      @gofrontend2220  4 года назад

      Алексей Олегович 1) да можно из компонента вызвать этот запрос. Разницы никакой, просто удобнее когда все запросы к апи в одном месте. Но вы правы.
      2) не знаю прокатит ли нижнее подчеркивание, но я обычно просто пустые {} ставлю, либо другой конструкцией через {context}. Тут я просто забыл:)

  • @sapolio1538
    @sapolio1538 4 года назад

    На 44-1 минуте мы вызываем экшен, чтобы подсунуть пустую строку, потому что это его, экшена(мутэйшена) особенность, для другого сделанная... Так почему мы сразу в сторе не стелали пустую строку? currentUserChat: ""
    И почему вообще он в хедер выводит эти скобки вместо toString(%тот самый пустой объект%) ? Ну, что-то вроде [object Object] хотя бы?

  • @mrzoom214
    @mrzoom214 4 года назад +1

    Все по полчкам, спасибо

  • @zaurhuseyn4432
    @zaurhuseyn4432 3 года назад

    согласен круто)

  • @unicoxr5tj417
    @unicoxr5tj417 3 года назад

    дружище, продолжай, лайк

  • @sateevtima7914
    @sateevtima7914 4 года назад

    дружище, держи лайк!
    Буду очень ждать авторизацию, с записью в db.json!

  • @Виталий-м2м4п
    @Виталий-м2м4п 4 года назад +1

    Спасибо!

  • @fessan8918
    @fessan8918 4 года назад +1

    Вопрос. А почему все таки mapState используете? а не mapGetters

    • @gofrontend2220
      @gofrontend2220  4 года назад +1

      Fessan если надо взять данные из стейта в компонент - это mapState. Если надо условно сложить данные А и Б из стейта и потом получить в компонент - пишем геттер складывающий их и получаем в компоненте через mapGetters

  • @dygidin1606
    @dygidin1606 4 года назад

    Спасибо за контент!
    Правильно ли я понимаю, что если мы перейдем в чат пользователя, а затем обновим страницу, то сообщения уже не загрузятся?
    Так как пропсы передаете через роутер?

    • @gofrontend2220
      @gofrontend2220  4 года назад +1

      Да все верно. Чтобы иметь возможность инициализировать приложение например на странице чата, то нужно запрашивать список чатов из API на странице чата. Потом фильтровать их основываясь на id чата в route.query и отфильтрованные данные распихивать в сообщения

    • @anton-trofimov
      @anton-trofimov 3 года назад

      А можно делать по человечески, инициализировать работу с апи в app.vue, а не в компонентах, потому что компоненты только для отрисовки контента. Также страницу пользователя делать через динамический роутинг можно. То, что пишет автор, далеко до продакшена. Но сама суть того, что он показывает новичкам азы, это хорошо. Но чтобы хорошо писать, изучайте документацию и смотрите хорошо написанные проекты

  • @fessan8918
    @fessan8918 4 года назад

    Привет! Уже не первый раз помогли твои видео. Не планируешь развиваться дальше? Патреон? чатик в телеге ?

    • @gofrontend2220
      @gofrontend2220  4 года назад

      Fessan я с трудом на просто видео время нахожу:) чатик в телеге - это мой личный тг:)

  • @СемёнПрохоров-з6я
    @СемёнПрохоров-з6я 4 года назад

    Всё очень круто, но очень бы хотелось подобное видео, но fullstack js (Mongo, Express, Vue или Nuxt и Node.js) это была бы бомба

    • @gofrontend2220
      @gofrontend2220  4 года назад

      Семён Прохоров этого точно не будет, так как я не фулстак:)

  • @johndevil4843
    @johndevil4843 4 года назад

    Спасибо за материал! Когда следующий урок?

  • @АлексейФилимонов-ф6ы

    Не работает( Ругается на vuex, даже если скачать с гита авторскую версию. В результате не подтягиваются данные из store. Обновление версии все только портит.

  • @igormuryy5722
    @igormuryy5722 Год назад

    Это на vue 2?

  • @monzon_8
    @monzon_8 3 года назад

    Array.filter должен ВЕРНУТЬ булево значение, результатом ее будет искомый объект (первый, для которого коллбек вернул true)
    зачем вы учите неокрепшие умы использовать программную навигацию vue-router, когда есть замечательный компонент router-link. vuejs - это html-first, соответственно все, что может быть выражено декларативно (в html), должно быть выражено именно так

  • @KOLA777ful
    @KOLA777ful 3 года назад

    спасибо, урок огонь! стоит ли ждать продолжение?

  • @TheMurtukov
    @TheMurtukov 4 года назад +1

    Зачем каждый файл префиксовать приставкой v-?

  • @sapolio1538
    @sapolio1538 4 года назад

    last-message можно чуть короче: {{user_data.chat.slice(-1)[0].text}}

  • @Виталий-е2й6н
    @Виталий-е2й6н 3 года назад

    Подскажите где иконки такие брать в папки и файлы ?

  • @ilyaponomarev9279
    @ilyaponomarev9279 4 года назад

    Норм, подписался

  • @losbur5416
    @losbur5416 4 года назад +1

    Классный канал, но не для новичков в js

  • @suleymandzhemilov5926
    @suleymandzhemilov5926 4 года назад +1

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

    • @gofrontend2220
      @gofrontend2220  4 года назад

      Suleyman Dzhemilov затираете пользователя. Смотрите что вы шлете в базу при вводе сообщений

  • @sekirogenshiro2210
    @sekirogenshiro2210 4 года назад

    Все нормально ,только не погружаются из джсон файла данные.путь пробовал и 3000 и 8080 и со слешами, никак, подгружает либ страницу (выводит в мутации страницу, либо ничего)

    • @ДимаРапид-ф5ъ
      @ДимаРапид-ф5ъ 4 года назад

      Да потому что тут бэка нет, который на 3000 порту по запросу отдает инфу. Например на node написаную без него весь фронт бесполезен.

  • @Viktorres1
    @Viktorres1 3 года назад

    Результат не запускается, проект не понятно как начинать(

  • @gomzaleshuan5260
    @gomzaleshuan5260 4 года назад +1

    Баг: если из списка контактов зайти на контакт, потом перейти в чаты и нащать кнопку Back, то ошибка "contact_data is undefined"

  • @vitker2254
    @vitker2254 2 года назад

    А как перенести на телефон?

  • @typokrat
    @typokrat 4 года назад

    Сколько стоит час вашей работы?

    • @gofrontend2220
      @gofrontend2220  4 года назад

      YuG_FM я не работаю фриланс

    • @typokrat
      @typokrat 4 года назад

      @@gofrontend2220 а какова среднерыночная стоимость часа спеца вашего уровня?

    • @gofrontend2220
      @gofrontend2220  4 года назад

      YuG_FM нет ее. Везде все по-разному. Деньги не за знания платят, а за обязанности рабочие. Ну в среднем думаю 1500-2000 час

  • @volodymyrfursov5948
    @volodymyrfursov5948 3 года назад

    Было бы побольше видео :(

  • @ant3413
    @ant3413 2 года назад

    а как сделать такой же чат для телеграмма?

    • @burG1XUS
      @burG1XUS Год назад

      что это значит?)

  • @АнастасияМихайлова-й3у

    Не запускается, куча ошибок, а было бы весьма интересно сделать такое приложение, увы :(

    • @burG1XUS
      @burG1XUS Год назад

      так перепиши код)

  • @ЯковЯврач
    @ЯковЯврач 4 года назад

    куча ошибок.. почему весь процесс не показать?

  • @ДимаРапид-ф5ъ
    @ДимаРапид-ф5ъ 4 года назад

    чел, а на чем бэк, ты бы не мог отдать инфу про бэк, а то без него это бесполезни ))

    • @gofrontend2220
      @gofrontend2220  4 года назад

      Дима Рапид тут нет бека

    • @ДимаРапид-ф5ъ
      @ДимаРапид-ф5ъ 4 года назад

      @@gofrontend2220 тогда куда стучится axios на порт 3000?

    • @gofrontend2220
      @gofrontend2220  4 года назад

      Дима Рапид в локальный фронтовый файл с json

    • @ДимаРапид-ф5ъ
      @ДимаРапид-ф5ъ 4 года назад

      @@gofrontend2220 тк если я его запускаю он мне говорит что 3000 не отвечает(((

    • @ДимаРапид-ф5ъ
      @ДимаРапид-ф5ъ 4 года назад

      @@gofrontend2220 Failed to load resource: net::ERR_CONNECTION_REFUSED :3000/contact

  • @БехрузАбдувалиев-н5и

    я щас скачал проект чтоб посмотреть его и выходит такая ишибка(Failed to load resource: net::ERR_CONNECTION_REFUSED
    createError.js?2d83:16 Uncaught (in promise) Error: Network Error
    at createError (createError.js?2d83:16)
    at XMLHttpRequest.handleError (xhr.js?b50d:83))
    и никакие кнопки не работают
    как исправить?