Спасибо за урок! Долго искала подобное видео по архитектуре SPA. Все очень понятно для новичка.
@MaximFilanovich7 ай бұрын
Круто! Рад, что смог помочь!
@АнжеликаТурлак7 ай бұрын
@@MaximFilanovich Спасибо Вам! И мне оооочень сильно помогли!
@MaximFilanovich7 ай бұрын
@@АнжеликаТурлак🔥🔥🔥
@Мефелион3 жыл бұрын
Супер, вот таких уроков бы побольше, а то вообще не мог понять как подступить к заданию!
@MaximFilanovich3 жыл бұрын
Круто! Рад, что понравилось видео!
@MAKSIMTSA3 жыл бұрын
@@MaximFilanovich я наверное бы провалил таску, если бы сегодня не посмотрел этот ролик) Все сдвинулось с мертвой точки. Роутинг здесь великолепен)
@inaf.28276 ай бұрын
Спасибо большое! Все четко! Вы мне очень помогли на старте!
@MaximFilanovich6 ай бұрын
Пожалуйста)
@НиколайРусакович Жыл бұрын
Отличный практический урок! Разложил по полочкам. Очень доступно.
@ЕвгенийДраганча3 жыл бұрын
Очень долго искал такого формата видео ничего не мог найти и вот наконец то оно
@MaximFilanovich3 жыл бұрын
Круто! Рад, что понравилось видео!
@gerompauel2 жыл бұрын
Спасибо. Отличный урок. Побольше бы таких!
@dmytroz.20842 жыл бұрын
годно! надеюсь будут еще ролики, а то вижу редко выходят! Отлично, что нашел этот канал!
@MaximFilanovich2 жыл бұрын
Спасибо :)
@sargeras1802 Жыл бұрын
Большое спасибо за урок. Спасибо, что так подробно показываешь каким должен быть код. Теория конечно хорошо, но данный ролик позволил её закрепить. Контент очень полезный, помогает разобраться как всё устроено изнутри. Ещё раз большое спасибо!)
@RamanShalamitski2 жыл бұрын
Посомтрел пару твоих уроков, спасибо, четко и по делу) учу js 5 месяц, непростые вещи, объясняешь довольно доступно) полезных вещей подчерпунл много)
@MaximFilanovich2 жыл бұрын
Спасибо за отзыв :) Удачи!
@juniper2nd Жыл бұрын
мегакрутой урок, чел ты лучший
@disgracefulsense78823 жыл бұрын
Спасибо! Вы определенно лучший ментор 🤗
@MaximFilanovich3 жыл бұрын
Спасибо за комментарий и приятные слова!
@prostonau Жыл бұрын
Хороший урок, спасибо
@SaintPowerFul2 жыл бұрын
если у вас не стартует dev server. надо в конфиге вэбпака заменить строку contentBase на static: { directory: path.join(__dirname, 'dist'), },
@ioanlozan53712 жыл бұрын
Спасибо брат
@hacer91685 ай бұрын
Чел ты лучший, спасибо!
@ВероникаТен-ф3л3 жыл бұрын
Большое спасибо за видео!! Буду ждать следующих видео с ts !!))
@MaximFilanovich3 жыл бұрын
Рад, что понравилось! Спасибо!
@nd18513 жыл бұрын
Запредельно полезное видео, спасибо!
@MaximFilanovich3 жыл бұрын
Спасибо за запредельно приятный комментарий! :)
@Saveli_Sh2 жыл бұрын
Спасибо, то что нужно было для задания и понимания SPA. Успехов Вам!!!
@MaximFilanovich2 жыл бұрын
Пожалуйста :)
@hasst92613 жыл бұрын
Круто, уааааау!
@MaximFilanovich3 жыл бұрын
Класс, рад, что понравилось видео!
@kotrvn15763 жыл бұрын
Обожаю такие ламповые каналы/видео, как будто с корешем попиздели и он затер тебе про тайпскрипт) Пивка не хватает)))
@ЕленаБасса3 жыл бұрын
Максим, видео супер!!! Все очень легко и доступно!!!
@MaximFilanovich3 жыл бұрын
Спасибо большое за годный комментарий 🔥
@emilvarn94742 жыл бұрын
Супер крутой урок!
@MaximFilanovich2 жыл бұрын
Спасибо! Рад, что видео зашло!
@D0000233 жыл бұрын
Спасибо за полезный контент. Сделай, пожалуйста, видео по структуре приложения на примере того же match-match. Исходя из макета какие бы компоненты и модули ты выделил и как бы всё это увязал между собой. С этим у всех большие сложности, вроде по кусочкам всё можно найти, а вот как грамотно увязать вообще не понятно. Можно просто в виде схем или картинок, хочется понять принципы.
@MaximFilanovich3 жыл бұрын
Спасибо за идею! Обязательно ее учту :)
@МаксимКлименков-л6у2 жыл бұрын
Все очень понятно, спасибо!
@MaximFilanovich2 жыл бұрын
Рад, что зашло!
@АндрейНи-э9р3 жыл бұрын
Спасибо! Очень хорошее объяснение!
@MaximFilanovich3 жыл бұрын
Спасибо за годный коммент! Рад, что понравилось видео!
@dianaholoborodko26513 жыл бұрын
Шикарное видео! Всё доступно и понятно рассказываешь! Побольше таких подробных разборов тем!
@MaximFilanovich3 жыл бұрын
Спасибо за крутой отзыв! Рад, что видео помогло!
@nouchance3 жыл бұрын
Спасибо большое процветанию вашему каналу удачи вам! Очень четко и понятно!!
@MaximFilanovich3 жыл бұрын
Спасибо за крутой комментарий!
@df74643 жыл бұрын
Круто! Спасибо! Хорошо объясняете, я понимаю!)
@MaximFilanovich3 жыл бұрын
Спасибо за классный отзыв!
@shaxay3 жыл бұрын
Очень кстати! Спасибо большое, жду больше уроков))
@MaximFilanovich3 жыл бұрын
Спасибо за крутой отзыв!
@ТатьянаЛ-л9э3 жыл бұрын
спасибо за видео!
@MaximFilanovich3 жыл бұрын
Спасибо за крутой отзыв! Рад, что понравилось видео!
@alenache1 Жыл бұрын
не буду комментировать архитектуру:)) но отмечу важный момент: автор упустил из виду, что использование хеша не дает вам возможность использовать якоря на странице. А если они вам будут все-так нужны, то имейте ввиду, что роутинг без хеша будет перезагружать страницу, если не отменить действие браузера по умолчанию на нажатие ссылки и hashchange уже работать не будет.
@ВячеславМаксютов-у5н2 жыл бұрын
отличное видео
@MaximFilanovich2 жыл бұрын
Спасибо!
@dolb9sha3 жыл бұрын
Спасибо. Все просто и понятно
@MaximFilanovich3 жыл бұрын
Спасибо за крутой комментарий!
@artemido4ka3 жыл бұрын
Очень круто, хотелось бы скорее увидеть реализацию страничек)
@MaximFilanovich3 жыл бұрын
Спасибо! Хах, ну она навряд ли будет, потому что дизайна нету. Но я подумаю на этот счёт)
@localhost666 Жыл бұрын
Почему так мало видео на канале? Контент шикарен
@apavlukovich3 жыл бұрын
Спасибо за видео! Помогло.
@MaximFilanovich3 жыл бұрын
Пожалуйста! Спасибо за отзыв! Рад, что смог помочь :)
@apavlukovich3 жыл бұрын
побольше таких роликов, сейчас на ютубе редко можно найти такое видео с созданием сайта на ts, в основном js
@MAKSIMTSA3 жыл бұрын
Почему Вы раньше не сделали этот ролик!?? ) Он бы мне ответил на много вопросов как по SPA так и по TS
@MaximFilanovich3 жыл бұрын
Лучше поздно чем никогда))
@MAKSIMTSA3 жыл бұрын
@@MaximFilanovich Хотелось бы еще новых видео в таком исполнении! Например про асинхронные выполнения, IndexedDB и много чего другого)
@sharkman6434 Жыл бұрын
оч классный урок единственно позволю себе посоветовать писать константы в enum вида MY_CONSTANT = 'My constant' ; потому что считаеться что штуки типа MyConstant это может быть как компонента так и некая функция , особенно в реакт где все компоненты так и пишуться
@annaantypova69563 жыл бұрын
Спасибо большое за видео! Как раз то что искала. А можно ли сделать spa в таком формате, только с подключением html файлов?
@MaximFilanovich3 жыл бұрын
Хорошая идея, подумаю над этим)
@foreveryoung50393 жыл бұрын
Спасибо за полезное видео. Один вопрос. Ты здесь раскидываешь модули по папкам. Хочу уточнить, согласно какой архитектуре организации кода ты это делаешь? Может скинешь почитать что-то на этот счёт.
@tanercoder19152 жыл бұрын
для начинающего запутанно, что у тебя два index.ts : один в корне другой в папке app . в чем приимущество так делать? поидее ведь лучше app.ts просто для логичности.
@donalnoye4946 Жыл бұрын
16:50 в run и render вместо append напишите appendChild, иначе вылазит ошибка
@Saveli_Sh2 жыл бұрын
Добрый день! Все-таки некорректно работает рендеринг при перезагрузке страницы. Например, если мы на settings-page, то при обновлении страницы, хэш остается settings-page, но загружается стартовая и при попытке перейти на settings-page, кликая на кнопку settings-page - ничего не происходит, кнопка не работает, также и с Statistics Page - если на ней остаешься, то после перезагрузки страаницы, она некликабельна, пока не пощелкаешь несколько раз. Хотелось бы, чтобы при перазагрузке хэш был старт-пейдж или вообще пустой, как при первом открытии спа. Получается, что работа приложения после перезагрузке некорректна, к сожалению((( сначала не обратила внимание, а теперь проверила, скачав Ваш код из гитхаба
@ЮрийЛютый-о1ч Жыл бұрын
Максим здраствуйте. Спасибо за ваш труд. Подскажите. В чем может быть проблема. На всех страница при попытке вывести title получаю undefind. Задаю аргумент в метод в таком формате. createHeaderTitle(SettingsPage.TextObject.MainTitle); Как в видео. На всех страницах кроме главной отображается undefind. Буду благодарен за ответ
@rhorv3 жыл бұрын
Привет, что думаешь по поводу того что разработчиков, (давай возьмем в тему веб) сможет заменить Искусственный Интеллект, и какая вероятность этого на наше время, потому что реально страшно, что какой-то робот сможет забрать работу, и банально то - чем нравиться заниматься.
@vitaly-3 жыл бұрын
Сразу видно что ты не работаешь, ибо смог бы тогда понять, что разработчиков не реально заменить AI или конструктором. Тут банально надо миллион лет потратить на разговоры с заказчиками о том как все должно работать, т.к куча тонкостей и их одни пластом не возможно закрыть без постоянного уточнения. Потом надо тратить время на прояснения с программистами из другого отдела (когда например написан бэк, но по доке не все моменты прояснены и наоборот когда у бека есть уточнения к тому, как лучше сделать api для фронта). Соответственно, тут видно, что из за постоянной кучи тонкостей в разработке и в понимании предметной области, не возможно все это переложить на, как ты выразился, "Искусственный Интеллект", который на самом то деле и не существует и не может в принципе существовать, это лишь нейронки и не более. Или мб ты визитки или одностраничники делаешь, то тогда да, у меня для тебя плохие новости, их можно уже очень давно липить в конструкторах. Да и вообще, повсеместная автоматизация затронет программистов в самую последнюю очередь.
@danil2738 Жыл бұрын
Подскажите пожалуйста, что за расширение для перевода выделенного текста в браузере? Я разные перепробовал, но все работают так или иначе плохо
@barabucho2 жыл бұрын
Я так и не понял,что выступает в роли движка/ядра web-приложения на стороне клиента? (что удерживает изменение контента от перезагрузки страницы)
@kaprizov32003 жыл бұрын
подскажи пожалуйста, у меня есть есть база по реакту, стоит ли учить реакт нативный ?
@MaximFilanovich3 жыл бұрын
Если есть база по рекату, то стоить учить продвинутые темы по Реакту. Сначала стоит прокачать себя в самом реакте. Если это сделаешь, то на нативку потом перейти составит примерно 1,5 - 2 недели
@kaprizov32003 жыл бұрын
@@MaximFilanovich понял, спасибо, просто конкуренция большая, устроится на работу, решил выделиться так сказать)
@ViktorElenich2 жыл бұрын
Продолжение будет этого видео?
@MaximFilanovich2 жыл бұрын
Навряд ли :)
@staskob55023 жыл бұрын
Выдает ошибку при запуске npx webpack serve Не могу понять [webpack-cli] Invalid options object. Dev Server has been initialized using an options object that does not match the API schema. - options has an unknown property 'contentBase'. These properties are valid: object { allowedHosts?, bonjour?, client?, compress?, devMiddleware?, headers?, historyApiFallback?, host?, hot?, http2?, https?, ipc?, liveReload?, magicHtml?, onAfterSetupMiddleware?, onBeforeSetupMiddleware?, onListening?, open?, port?, proxy?, setupExitSignals?, static?, watchFiles?, webSocketServer? }
@banyman7405 Жыл бұрын
такая же ошибка на этом шаге. как решили?
@aruna86893 жыл бұрын
Здравствуйте, у меня завтра интервью онлайн, по js и react, без онлайн кода, что нужно знать? Очень волнуюсь
@MaximFilanovich3 жыл бұрын
Привет! Я рекомендую перейти в мой Instagram профиль и посмотреть 2 последних поста. Там описываются топ вопросов по React, которые мне задавали на собесах :) Вот ссылка: instagram.com/p/CPGbYK8jyV2/ Также есть пост про топ популярных вопросов по JS на собеседовании (с ответами на эти вопросы): instagram.com/p/CMKOS5PgJQW/ Тут главное помнить, что собеседование - это не экзамен. Собес - это общение 2-х разработчиков за чашечкой кофе. Все обычно проходит в лайтовой обстановке. Поэтому, самое главное, что нужно взять с собой на собес - это спокойствие и хорошее настроение. 😉 Уверен, у тебя все получится!
@aruna86893 жыл бұрын
@@MaximFilanovich спасибо
@JavaScriptcher2 жыл бұрын
Почему импортируем { pageIds } в скобках?
@ДмитрийКуликов-ы9ч7ф3 жыл бұрын
А какой практический смысл подобных опытов? Приходится сначала писать свой фреймворк, а потом уже писать бизнес логику, в итоге выходит медленно, багисто и не гибко.
@MaximFilanovich3 жыл бұрын
Опыт в том, что мы пишем это без фреймворков. Новичкам нет смысла начинать сразу с библиотек, так как без базы никуда не уедешь. А в этом видео очень много базовых и полезных вещей из JS и TS. А если рассматривать реальный проект, то конечно же нужна библиотека :)
@ДмитрийКуликов-ы9ч7ф3 жыл бұрын
Новичкам надо объяснить то, что инструмент должен соответствовать задаче. Если у меня есть лендинг с одной формой и тремя аккордионами, то я просто пишу более или менее структурированную лапшу и это нормально, а вот если я буду фигачить сюда классы, вот тут поддержка этого всего превращается в ад. Если вы хотите показать преимущества классов, так напишите бизнес логику с богатой моделью на Domain Driven Design, вот тут к месту будет и приватные методы и статические и инкапсуляция и полиморфизм, потом возьмите и поменяйте фреймворк, например, вот оп рабоает на реакте, потом оп на ангуляре, потом оп на svelte. При этом в самой бизнес логике вообще ничего не изменяя. Вот это будет действительно полезно для новичков и будет понятно зачем классы вообще нужны.
@MaximFilanovich3 жыл бұрын
@@ДмитрийКуликов-ы9ч7ф Во всяком случае это ваше мнение и спасибо, что им поделились :) Отзывы других людей говорят сами за себя и поэтому я понимаю, что делаю все правильно
@ДмитрийКуликов-ы9ч7ф3 жыл бұрын
@@MaximFilanovich Так я не в плане наезда, просто приходится довольно часто править за джуниорами что-то вот такое на классах при этом не являющееся ООП, если в программе есть классы это еще не означает, что есть ООП. Любой инструмент должен быть к месту использован мне кажется.
@1Malak163 жыл бұрын
Внесу немножко критики, надеюсь будет воспринята адекватно. На мой взгляд, нужно более внимательно относиться к тому коду, который вы предлагаете новичкам, которые пока не имеют достаточного опыта, что-бы разделить, что хорошо, а что плохо. Например, конструкция в классе app из последовательных if else. Уверен, вы никогда бы такое не написали в продакшин коде.
@MaximFilanovich3 жыл бұрын
Юрий, это ваше мнение и ему есть место быть. Я же считаю иначе. Данная конструкция с if else имеет место быть на реальных проектах и в ней ничего плохого нет. Что вместо него использовать? switch case? Ну у него по факту та же логика. Цепочки if else очень популярные конструкции на проектах. Я это говорю как человек с опытом работы в 1 год. Если Вы более опытный, то Вам, видимо, виднее :)
@lolbozland3 жыл бұрын
@@MaximFilanovich во всём, что работает - нет ничего плохого) switch case вынесенный в отдельный файл, наверное более красивое решение) чем if else в App, наверно об этом говорилось) В любом случае, посмотрел - повторил - усвоил, благодарю)
@aleksandrmatyka31182 жыл бұрын
@@MaximFilanovich Отличное видео, но соглашусь с комментарием выше, можно было бы к примеру вынести в отдельный файл в виде обьекта страниц все инстансы и потом просто сопоставлять урл по ключу с обьектом или памится в случае массива но для учебного примера это не столь важно
@cartel3580 Жыл бұрын
не запускается девсервер - выдает много ошибок
@zir6471 Жыл бұрын
та же фигня
@victormog3 жыл бұрын
*switch*
@MaximFilanovich3 жыл бұрын
Не совсем понял, к чему это))
@victormog3 жыл бұрын
@@MaximFilanovich if-else-if
@MaximFilanovich3 жыл бұрын
@@victormog По факту, тут разницы большой нет. Это уже вкусовщина
@victormog3 жыл бұрын
@@MaximFilanovich Видел статьи и видео о нежелательности else вообще - но не смотрел, т.к. сам else-if использую крайне редко...
@MaximFilanovich3 жыл бұрын
@@victormog Вообще, это зависит от разработчика, насколько часто он используют ту или иную структуру :)
@victormog3 жыл бұрын
Не понял практического смысла в объявлении поля TextObject *статическим...*
@MaximFilanovich3 жыл бұрын
Смысл TextObject в том, что он хранит константы с контентом, который будет видеть пользователь. Это вообще любой текст для конкретной страницы. Почему он статический? 1. TextObject относится к определенной сущности (будь то страница либо компонент). А значит, он должен находится внутри класса 2. Не вижу смысла делать текстовые константы не статическими. Если поле либо функция никак не работает с this, то есть большой смысл использовать static
@victormog3 жыл бұрын
@@MaximFilanovich Из-за этого статического поля класс сразу стал _одноразовым..._ ... а можно было бы вынести его в абстрактный.
@victormog3 жыл бұрын
@@MaximFilanovich Статическими всё-таки принято делать поля и методы общие для всех экземпляров, а не потому, что они не используют this.
@MaximFilanovich3 жыл бұрын
@@victormog Интересное мнение. Я так конечно же не считаю. Просто "одноразовый" класс. Странное выражение. Во всяком случае круто, что мы поделились мнениями))
@hennadiikhudolieiev21982 жыл бұрын
ударение в аббериватуре ids ставиться не на i "Айдиз", а на d "айдИз"