Илья, большое спасибо за этот курс! Несмотря на то что я уже собаку съел работая на Vue, всё равно смотрю с удовольствием ради систематизации знаний. И, конечно, жду видео про Vue3, до которого у меня так и не дошли руки до сих пор.
Огромное спасибо за курс.. Видео много и разньіх ), но уроков с "понятийньім мьішлением" , которьіе сначала обьясняют что и ,главное, зачем -- редкость...
Блин, вот websocket на примере чата если рассматривать, то мне не очень понятно, почему нет как таковой реактивности, потому что, если мы отредактировали сообщение, у пользователя оно тоже должно отредактироваться. И как бы с одной стороны посмотреть взаимосвязи нет, если это просто чат, потому что нечего менять для того, чтобы оказывать реактивность, а с другой стороны при редактировании или удалении сообщений вроде как появляется.
Отличная шпаргалка, спасибо! А можно парочку спойлеров, какие пакеты с вебсокетами однозначно НЕ стоит использовать во Vue? =) В одном из vue-проектов использовали пакет @stomp/stompjs, с ним вроде сюрпризов не было, все стабильно работало...
Хорошая инструкция, и соглашусь про vue-x пакеты, ибо зачастую поддержка у них так себе, в отличии от оригинала с которого сделан порт, потому что условная аудитория (пользователи пакета) размазываются между такими портами, что только дробит сообщество, и знания, поскольку библиотека вроде одна и та же, но люди использующие js реализацию будут не понимать как использовать vue-x версию, и наоборот. Отсюда и различного рода ограничения, в том числе и самого порта, поскольку он хоть и предоставляет api оригинала, но как правило обёрнутый в свою логику, со своими багами и ограничениями. Но это не касается пакетов изначально разработанных эксклюзивно для Vue, поэтому всегда надо смотреть, порт ли это или специальная разработка под фреймворк.
Илья, огромное спасибо за вашу работу! Сразу видно преподавательский подход к процессу обучения - сначала теория (очень подробно и доступно) для понимания именно концепций, лежащих в основе Vue. С нетерпением жду, как и большинство ваших подписчиков, новых видео, а ещё больше заданий и их проверок - это пожалуй то, чего не хватает особенно сильно при самостоятельном обучении! Возможно это наглость с моей стороны :-) (вы и так бесплатно делитесь знаниями), но хотелось бы поинтересоваться - не планируете организовать простейший трекер для возможности отслеживать тематики ближайших уроков и даты их выхода?
Первое время трекера не будет, потому что календарь и темы будут ОЧЕНЬ СИЛЬНО зависеть от фидбека на лайвах и того что вижу в чате. У меня есть "направление" и "темы" но выстраиваю их в конкретный порядок я где-то раз в неделю
Пока только верстать умею, вот недавно начал изучать Vue и очень нравится. К сожалению, не сталкивался с тем, что в видео, поэтому сижу с глупым видом (лекции классные, прост говорю что я пока чайник)
Если речь о первом условии диаграммы, то на самом деле - нет. Большинство источников данных приложений (Ajax, GraphQL (голый!), WebSockets) не реактивны: происходит некое событие говорящее «свежие данные» и вы как разработчик уже решаете как и куда эти данные впихнуть (допустим в список), и дальше уже начинаеться «реактивность» (список создаёт и обновляет свои элементы). А вот если вы используете сторонние библиотеки (вроде того же Apollo) то этот вопрос уже решили за вас. В случае с Аполло вполне может случиться что при запросе списка пользователей он вам обновит личный профиль, и это нормальное его поведение (реактивное в чистейшем виде).
Я правильно понимаю, что главный поинт не использовать в проекте библиотеки, типа vue-X, что они создают сильную связность (strong cohesion) для наших компонентов ?
Если нужно получить данные из хранилища X, то, на мой взгляд, лучше сделать обертку над этим хранилищем, которая предоставляет набор методов, названия которых определяется не хранилищем X, а нуждами компонента или проекта в целом. Для примера "getNewsList" - получает список новостей. Получается немного избыточно, но если потом данные переедут из X в Y, то нужно будет переписать только одну обертку.
@@JavaScriptNinja Более чем хороший ответ. Профессионал знает миллион решений, которые всегда и везде не работают и несколько, которые возможно подойдут для определенной задачи :)
@@JavaScriptNinja да, просто пишу Vue.use(new VueSocketIO( настройка... )) и теперь я могу юзать sockets:{методы...} в компонентах, или SOCKETS_имяМетода во vuex, это очень удобно. Вероятно нативным методами это было бы намного геморойнее
Вот бы что-нибудь почитать на русском про Vue 3, понятно, что есть оригинальная eng дока (правда, на ней скорость чтения 0,3х у меня), может кто-нибудь слышал когда переведут? И конечно же спасибо большое за уроки, ждем новых и домашек побольше!!!
Не понял, что означают слова: аксиос и вебсокет не предоставляют данные, которые надо реактивно обновлять? Ну ладно аксиос - пришли данные и отобразились, причём не как нибудь, а именно реактивно и не важно, что больше не меняются. А данные вебсокета меняются же постоянно и их надо реактивно обновлять.
@@JavaScriptNinja Я могу ошибаться, но мне кажется формулировка вопроса "X предоставляет данные, которые необходимо реактивно обновлять?" не однозначна. Где обновлять? В html? Я при первом просмотре понял это именно так, что надо ли нам получить данные, которые нужно реактивно обновить в html.
Я так понял реактивно обновляемые данные это когда в зависимости от одних данных меняются другие Сокет тебе шлёт одни данные, которыми ты распоряжаешься на своё усмотрение Если ты отправил данные в аксиос и он вернул ответ то это тоже не реактивность Реактивность это когда ты поменял данные, отправил запрос на сохранение и при удачном ответе поменял эти данные во всех зависимых местах Но это опять же происходит у тебя на фронте, аксиос просто вернул результат, что всё прошло окей на бэке
@@astrotrain Так до этого, во всех видео говорилось именно о реактивности фреймворка Vue, а это однозначно подразумевает под термином "обновление" автоматическое обновление отображения данных в html. Синхронизация данных и их отображения. Мы же не качаем всю базу данных, а, например, используя фильтры, шлём разные запросы и получаем разные данные, которые при правильной организации должны автоматически отобразиться (обновиться) в разных компонентах в html. По моему мнению хороший компонент вообще ничего не должен знать ни про аксиосы с вебсокетами, ни про библиотеки X-Vue.js Он должен взаимодействовать с миром только через API.
В инструкции не хватает пояснения про основные плюсы ответа vue-x на "может быть визуальным компонентом", т.е. про то что хуки компонентов могут быть использованы для согласования жизненного цикла подключаемой библиотеки с жизненным циклом вью. Например всякие попапы, тултипы написанные на чистом js и согласующие свой жизненный цикл и интерфейс по средствам библиотек для интеграции.
Ещё, ещё, ещё, дайте мне срочно ещё видео!😊
Илья, только не останавливайся. :)
Даже сложно что то предложить. Крутой формат, особенно для тех кто уже как то поработал на Vue и хочет теперь повторить и укрепить свои знания
Спасибо, это лучшее (по полезности) что я видел за последний месяц
“Vue же построен на магии» это пять)
Ох я чувствую, через полгода доберусь до фронтенда и распространю подход Метархии на браузер )
Через полгода? Ой вряд-ли, учитывая сколько задач на бэке :)
@@JavaScriptNinja и помечтать уже нельзя... )))
очень ждём
добрались?)
Приятно слушать грамотную речь, которая сейчас встречается крайне редко. Автору респект.
Постоянно читал vue-x как vuex ))
Спасибо, очень доходчиво)
Спасибо за первые 4 урока. Доходчиво и внятно.
Я на 4 видосе - полет нормальный - хорошая работа.
Жду продолжения и практику.
Спасибо за контент это то чего не хватаем мне и думаю что много кому еще.
Благодарю за первые 4 урока. Все понятно и очень интересно.
Илья, большое спасибо за этот курс!
Несмотря на то что я уже собаку съел работая на Vue, всё равно смотрю с удовольствием ради систематизации знаний. И, конечно, жду видео про Vue3, до которого у меня так и не дошли руки до сих пор.
Не возможно оторваться, вы крутой!
Очень, очень круто, хочу ещё!!!
Это видео про боль, которую я много раз переживал...
Интересненько, даже сухое филосовство заходит нормально!
Огромное спасибо за курс..
Видео много и разньіх ), но уроков с "понятийньім мьішлением" , которьіе сначала обьясняют что и ,главное, зачем -- редкость...
Спасибо за видео! Смотрю уже 4 урок! Надеюсь, освою vue!
Великолепно!
Блин, вот websocket на примере чата если рассматривать, то мне не очень понятно, почему нет как таковой реактивности, потому что, если мы отредактировали сообщение, у пользователя оно тоже должно отредактироваться. И как бы с одной стороны посмотреть взаимосвязи нет, если это просто чат, потому что нечего менять для того, чтобы оказывать реактивность, а с другой стороны при редактировании или удалении сообщений вроде как появляется.
чётко о реактивности
Круто! Спасибо)
Отличная шпаргалка, спасибо! А можно парочку спойлеров, какие пакеты с вебсокетами однозначно НЕ стоит использовать во Vue? =) В одном из vue-проектов использовали пакет @stomp/stompjs, с ним вроде сюрпризов не было, все стабильно работало...
Это прям ну очень хорошо )))
спасибо за видео=)) полезная инфа=))
Хорошая инструкция, и соглашусь про vue-x пакеты, ибо зачастую поддержка у них так себе, в отличии от оригинала с которого сделан порт, потому что условная аудитория (пользователи пакета) размазываются между такими портами, что только дробит сообщество, и знания, поскольку библиотека вроде одна и та же, но люди использующие js реализацию будут не понимать как использовать vue-x версию, и наоборот. Отсюда и различного рода ограничения, в том числе и самого порта, поскольку он хоть и предоставляет api оригинала, но как правило обёрнутый в свою логику, со своими багами и ограничениями.
Но это не касается пакетов изначально разработанных эксклюзивно для Vue, поэтому всегда надо смотреть, порт ли это или специальная разработка под фреймворк.
Мда, ну у людей и вопросы, вспомнил вью до 1 версии и прослезился... Как же все там просто было :) ну хоть немного ностальгии, тоже неплохо
Спасибо !!
Илья, огромное спасибо за вашу работу! Сразу видно преподавательский подход к процессу обучения - сначала теория (очень подробно и доступно) для понимания именно концепций, лежащих в основе Vue. С нетерпением жду, как и большинство ваших подписчиков, новых видео, а ещё больше заданий и их проверок - это пожалуй то, чего не хватает особенно сильно при самостоятельном обучении!
Возможно это наглость с моей стороны :-) (вы и так бесплатно делитесь знаниями), но хотелось бы поинтересоваться - не планируете организовать простейший трекер для возможности отслеживать тематики ближайших уроков и даты их выхода?
Первое время трекера не будет, потому что календарь и темы будут ОЧЕНЬ СИЛЬНО зависеть от фидбека на лайвах и того что вижу в чате. У меня есть "направление" и "темы" но выстраиваю их в конкретный порядок я где-то раз в неделю
Спасибо
Пока только верстать умею, вот недавно начал изучать Vue и очень нравится. К сожалению, не сталкивался с тем, что в видео, поэтому сижу с глупым видом (лекции классные, прост говорю что я пока чайник)
Мне кажется или это относительно сложно определять, надо ли реактивно обновлять тот или иной вид данных?
Если речь о первом условии диаграммы, то на самом деле - нет.
Большинство источников данных приложений (Ajax, GraphQL (голый!), WebSockets) не реактивны: происходит некое событие говорящее «свежие данные» и вы как разработчик уже решаете как и куда эти данные впихнуть (допустим в список), и дальше уже начинаеться «реактивность» (список создаёт и обновляет свои элементы).
А вот если вы используете сторонние библиотеки (вроде того же Apollo) то этот вопрос уже решили за вас.
В случае с Аполло вполне может случиться что при запросе списка пользователей он вам обновит личный профиль, и это нормальное его поведение (реактивное в чистейшем виде).
Красафчик!
Климов завелся не на шутку )
Ну и молодец!!!!!
пока все просто, поэтому хочется больше видео.
Ахах, а я сначала подумал, что это типа аллегория на vuex))
Автора на много приятнее слушать на х2)
Полезно
👍
Я правильно понимаю, что главный поинт не использовать в проекте библиотеки, типа vue-X, что они создают сильную связность (strong cohesion) для наших компонентов ?
Нет, их не надо использовать чаще всего потому что это может быть либа кривая или заброшенная.
Будет ли затронута тема про typescript или примеры только на чистом js?
Я скорее хейтер тайпскрипта, поэтому возможно и только ближе к концу
@@JavaScriptNinja даже не буду спрашивать почему)
комментарий для продвижения канала
а что означает использовать X? что такое X
Вместо Х подставить что угодно
Если нужно получить данные из хранилища X, то, на мой взгляд, лучше сделать обертку над этим хранилищем, которая предоставляет набор методов, названия которых определяется не хранилищем X, а нуждами компонента или проекта в целом. Для примера "getNewsList" - получает список новостей. Получается немного избыточно, но если потом данные переедут из X в Y, то нужно будет переписать только одну обертку.
В основном согласен с Вами, буду тоже про это рассказывать
@@JavaScriptNinja Более чем хороший ответ. Профессионал знает миллион решений, которые всегда и везде не работают и несколько, которые возможно подойдут для определенной задачи :)
🙋♂️юзаю год Vue-socketio в продакшн проекте, полёт нормальный. Чего стоит опасаться? О какой такой боли идёт речь?
Какую ценность добавляет vue-socketio над обычным?
Я ж правильно догадываюсь что он примешивает себя к чужому прототипу (Vue)?
@@JavaScriptNinja да, просто пишу Vue.use(new VueSocketIO( настройка... )) и теперь я могу юзать sockets:{методы...} в компонентах, или SOCKETS_имяМетода во vuex, это очень удобно. Вероятно нативным методами это было бы намного геморойнее
Кто нибудь использовал вместо redux или vuex библиотеку xstate? Я сейчас использую и у меня вопрос, не слишком ли я усложняю проект
Вот бы что-нибудь почитать на русском про Vue 3, понятно, что есть оригинальная eng дока (правда, на ней скорость чтения 0,3х у меня), может кто-нибудь слышал когда переведут? И конечно же спасибо большое за уроки, ждем новых и домашек побольше!!!
То, что меня убивает по Vue, это отсутсвие типизации. Или я еще не разобрался?
Изучил нативный js, пора выбирать фреймворк, как думаете, стоит выбирать vue первым, если есть хорошие знания в нативном языке?
Дайте совет, plz)
Ну Vue не хуже реакта, и у него отличная дока, т.е кривая обучения в самый раз.
Определенно вью должен быть первым фрейморком
Нашёл где спрашивать😂 Уверен, что тебе не нуб ответит?
@@jorgen5462 я, например, месяцев 7 на вью пишу. Знаком с основами реакта
Здравствуйте, а будут ли видео по кору js по типу веб и сервис воркеров, блобы, асинхронность, оптимизация кода?
Нет, этот курс по vue
@@JavaScriptNinja я имею ввиду вообще, не в этом курсе
Как мне связать вью и джиквери?
Как мне связать Vue и OpenCart
Если данная CMS может предоставлять api, тогда можно SPA запилить. Только знаем если из коробки куча готового функционала ?
Не понял, что означают слова: аксиос и вебсокет не предоставляют данные, которые надо реактивно обновлять? Ну ладно аксиос - пришли данные и отобразились, причём не как нибудь, а именно реактивно и не важно, что больше не меняются. А данные вебсокета меняются же постоянно и их надо реактивно обновлять.
Специально для таких вопросов будут лайвы. Вебсокет не обновляет какие-то данные ,он шлёт сообщения :)
@@JavaScriptNinja Я могу ошибаться, но мне кажется формулировка вопроса "X предоставляет данные, которые необходимо реактивно обновлять?" не однозначна. Где обновлять? В html? Я при первом просмотре понял это именно так, что надо ли нам получить данные, которые нужно реактивно обновить в html.
Тогда получается, что как раз мы используем AXIOS для получения данных (свежих) и реактивно их обновить. Уже путаница возникнуть может
Я так понял реактивно обновляемые данные это когда в зависимости от одних данных меняются другие
Сокет тебе шлёт одни данные, которыми ты распоряжаешься на своё усмотрение
Если ты отправил данные в аксиос и он вернул ответ то это тоже не реактивность
Реактивность это когда ты поменял данные, отправил запрос на сохранение и при удачном ответе поменял эти данные во всех зависимых местах
Но это опять же происходит у тебя на фронте, аксиос просто вернул результат, что всё прошло окей на бэке
@@astrotrain Так до этого, во всех видео говорилось именно о реактивности фреймворка Vue, а это однозначно подразумевает под термином "обновление" автоматическое обновление отображения данных в html. Синхронизация данных и их отображения. Мы же не качаем всю базу данных, а, например, используя фильтры, шлём разные запросы и получаем разные данные, которые при правильной организации должны автоматически отобразиться (обновиться) в разных компонентах в html. По моему мнению хороший компонент вообще ничего не должен знать ни про аксиосы с вебсокетами, ни про библиотеки X-Vue.js Он должен взаимодействовать с миром только через API.
Подскажите, есть ли у вас курс по JS или с чего лучше начать?
learn js учебник от Кантора
@@TheManblax Благодарю!
В инструкции не хватает пояснения про основные плюсы ответа vue-x на "может быть визуальным компонентом", т.е. про то что хуки компонентов могут быть использованы для согласования жизненного цикла подключаемой библиотеки с жизненным циклом вью. Например всякие попапы, тултипы написанные на чистом js и согласующие свой жизненный цикл и интерфейс по средствам библиотек для интеграции.
Ну вы слишком далёко забегаете вперед, тут автор даже про v-model упомянул только вскользь, а вы уже про хуки заговорили)
Постарайся обьяснять максимально простым языком!! Тебя смотрят новички!
Новички не знают что такое npm, компоненты и тд
Чувак тебе в правой руке папиросы нехватает))
Супер, спасибо)
Как мне связать Vue и Wordpress