Полная настройка Node.js с TypeScript в 2023

แชร์
ฝัง
  • เผยแพร่เมื่อ 24 ธ.ค. 2024

ความคิดเห็น •

  • @VladilenMinin
    @VladilenMinin  2 ปีที่แล้ว +7

    Инструкция и исходный код тут: t.me/js_by_vladilen/548
    Закрытый блог в Boosty: boosty.to/vladilen

  • @denisshepelev1966
    @denisshepelev1966 2 ปีที่แล้ว +44

    Вы просто не представляете насколько актуально это и как вовремя для меня вы это выложили. Огромная благодарность за труды!!!

    • @ShaidarHaran87
      @ShaidarHaran87 2 ปีที่แล้ว

      Ахаха, для меня тоже. На два дня раньше бы ещё)

    • @alexandrkruglyak
      @alexandrkruglyak ปีที่แล้ว

      Ребят пишу микросервисы на nodejs для junior, кому актуально - добро пожаловать💪

  • @asg5511
    @asg5511 2 ปีที่แล้ว +3

    Очень полезный ролик! Благодарю!
    У Владилена бесплатный контент, круче чем у некоторых на платных ресурсах.

  • @daniil_pavlov
    @daniil_pavlov ปีที่แล้ว +14

    Так, у кого ошибка: ERR_UNKNOWN_FILE_EXTENSION
    Нужно установить tsx вместо ts-node и изменить в nodemon.json, в строке exec, соответственно.

    • @DubinArtur
      @DubinArtur 11 หลายเดือนก่อน +1

      Спасибо

    • @NowAndroid
      @NowAndroid 10 หลายเดือนก่อน

      Благодарю

    • @ТагирФасхутдинов-т5х
      @ТагирФасхутдинов-т5х 9 หลายเดือนก่อน

      Спасибо, очень выручил

    • @mitchrootFineArt
      @mitchrootFineArt วันที่ผ่านมา

      Мне ИИ вот так насоветовал, тоже работает
      "exec": "node --loader ts-node/esm ./src/main.ts"

  • @ShaidarHaran87
    @ShaidarHaran87 2 ปีที่แล้ว +2

    Владилен, спасибо. Топ контент. Минимум воды, всё четко и по красоте.

  • @АлексейСтепанов-к9о
    @АлексейСтепанов-к9о 2 ปีที่แล้ว +2

    Владилен, спасибо за подробное раскрытие информации. Как всегда все разложено по полочкам и разжевано до полной ясности. Однозначно лайк.

  • @forellko8600
    @forellko8600 2 ปีที่แล้ว +2

    Как всегда топ контент! Спасибо!

  • @Boy270978
    @Boy270978 ปีที่แล้ว +1

    Спасибо тебе большое добрый Человек !

  • @ruslanundefined2242
    @ruslanundefined2242 2 ปีที่แล้ว +1

    Очень ценная инфа как для новичков, я хоть и знал более половины из этого, но посмотри это видео раньше, столько времени бы сэкономил) спасибо за видос!

  • @Лаурахит
    @Лаурахит 2 ปีที่แล้ว

    Четко ясно и по полочкам, как и всегда. Благодарю за хорошую подачу и четкое объяснение!!!

  • @MrSlapp150
    @MrSlapp150 หลายเดือนก่อน

    Спасибо! Очень полезное видео.

  • @caH40yc
    @caH40yc ปีที่แล้ว

    Комментарий в поддержку видео. Спасибо за урок, полезная информация!

  • @d_r_robot
    @d_r_robot 2 ปีที่แล้ว +2

    Лайк с двух ног! Спасибо тебе за контент!

  • @anvarzaripboyev5730
    @anvarzaripboyev5730 ปีที่แล้ว

    Просто прекрасно!

  • @todayisyourfuture
    @todayisyourfuture 2 ปีที่แล้ว

    Как раз я недавно начал учить нодежс и хотел курс от Владилена. Спасибо за труд 🎉

  • @RosTwitchNadzor
    @RosTwitchNadzor ปีที่แล้ว

    Самое полезное видео что я видел по этой тематике

  • @xp4ns
    @xp4ns ปีที่แล้ว

    Огромное спасибо, очень познавательно

  • @Happy-wt9dy
    @Happy-wt9dy 2 ปีที่แล้ว

    Это просто гениально! Я как раз заканчиваю изучать основы js и перехожу на ts, очень актуально и вовремя подана информация)

    • @nade3282
      @nade3282 2 ปีที่แล้ว +1

      а что гениального то

    • @Happy-wt9dy
      @Happy-wt9dy 2 ปีที่แล้ว +1

      @@nade3282 Очень понятно и доступно объяснить тему - признаки гениальности

    • @nade3282
      @nade3282 2 ปีที่แล้ว +1

      @@Happy-wt9dy ты его переоцениваешь

    • @nade3282
      @nade3282 2 ปีที่แล้ว

      @@Happy-wt9dy и это не признаки гениальности

    • @sergey-fadeev
      @sergey-fadeev 2 ปีที่แล้ว

      @@nade3282 Ты че до***ся до человека?

  • @sailoks8411
    @sailoks8411 2 ปีที่แล้ว

    Ураа, спасибо за видео!!

  • @Syberby
    @Syberby 2 ปีที่แล้ว +1

    Старый добрый Владилен. Учился по твоим роликам.

  • @НикитаПопов-у1щ
    @НикитаПопов-у1щ 2 ปีที่แล้ว +1

    Боже это же ангел 😂. Спасибо за видео, реально полезно

  • @БорисОстроумов-т7к
    @БорисОстроумов-т7к 2 ปีที่แล้ว

    О, ты вернулся, с возвращением!

  • @webstack-frontend1697
    @webstack-frontend1697 2 ปีที่แล้ว

    Классное видео, спасибо!

  • @evgeniy_pashko
    @evgeniy_pashko 2 ปีที่แล้ว +8

    У Prettier есть некоторая особенность при форматировании кода, некоторые правила конфликтуют с ESLint с точки зрения оформления кода. Дополнительно в таком случае еще надо ставить пакет eslint-plugin-prettier и произвести настройку.

    • @egolege
      @egolege 2 ปีที่แล้ว

      Примеры в студию

    • @evgeniy_pashko
      @evgeniy_pashko 2 ปีที่แล้ว +3

      @@egolege поэкспериментируйте сами, используя установленные плагины ESLint и Prettier. Подхватив конфиги с папки проекта они позволят на лету проверять, а не в случае, как на видео когда через npm команды выполняется линтинг и форматирования. По-крайней мере вариант проверки кода на лету я предпочитаю больше чем через команды

    • @romanmed9035
      @romanmed9035 2 ปีที่แล้ว

      @@evgeniy_pashko соглсен с тем, что именно на лету, иначе теряется всякий смысл исполльзования. причем сделать то не долго и не сложно.

    • @Avrelian-os1ht
      @Avrelian-os1ht ปีที่แล้ว

      Блять, это написано в доках преттир, ватсон

  • @alexandrkruglyak
    @alexandrkruglyak ปีที่แล้ว

    Актуальная инфа по typescript, однозначно лайк!
    микросервисы nodejs для junior , кто в теме - заходим в гости!

  • @ЕвгенийПеревалов-ч1т
    @ЕвгенийПеревалов-ч1т 2 ปีที่แล้ว

    Не смотрел, но одобряю. )))

  • @andygr1n1
    @andygr1n1 2 ปีที่แล้ว

    в целом прекрасный обзор! Не смог пройти мимо так как пытаюсь решить проблему alias на 18 nodejs. К слову, 18 нода и даст все современные преимущества )

  • @fvllen_angel7
    @fvllen_angel7 ปีที่แล้ว +2

    на 4:49 при вводе touch src/main.ts
    touch : Имя "touch" не распознано как имя командлета, функции, файла сценария или выполняемой программы. Проверьте правильность написания имени, а также наличие и правильность пути, после чего повторите попытку. В чем может быть проблема?

    • @GunaevVO
      @GunaevVO ปีที่แล้ว

      тоже самое, как исправть ?

    • @fvllen_angel7
      @fvllen_angel7 ปีที่แล้ว

      @@Maksim-nu8hb да, ты прав, с BASH или ZSH все работает

    • @fvllen_angel7
      @fvllen_angel7 ปีที่แล้ว

      @@GunaevVO Запусти данную команду с линуксовского терминала bash или zsh. Если ты с винды, то установи Git Bash или уже даже WSL (Windows Subsystem for Linux). В PowerShell или cmd другой синтаксис команд

  • @Vlad-sw4zd
    @Vlad-sw4zd 10 หลายเดือนก่อน

    Ну а вот в create react app проекте по дефолту запуск eslint - это часть сборки
    Для этого в скрипт запуска достаточно npx eslint добавить?

  • @alekseirukhmanov9123
    @alekseirukhmanov9123 2 ปีที่แล้ว +1

    спасибо очень ценная инфа, а rimraf с флагом -D? на проде же тоже надо наверное папку build обновлять иначе после 50 коммитов там скопится всякое

  • @Bulat1
    @Bulat1 2 ปีที่แล้ว

    И всё??? Так легко ? Спасибо!!! Просто огромное спасибо !

  • @brutalv4
    @brutalv4 2 ปีที่แล้ว

    Спасибо за контент! Имхо скрипты были бы изящней, если их ещё разбить на prebuild и prestart так, чтобы все что до амперсандов туда

  • @dartchanel4949
    @dartchanel4949 2 ปีที่แล้ว

    @Владилен Минин если установить Next13 то типы и линт добавляются в dependencies а не в dev как у вас... Зашел в замешательство, куда правильно устанавливать?

    • @wlyapa
      @wlyapa ปีที่แล้ว

      они нужны в продакшене? Если они вам нужны, то оставляйте в dependencies, а если нет, то лучше в dev

  • @dmitriy8735
    @dmitriy8735 2 ปีที่แล้ว +1

    Для работы тайпскрипта НЕ нужен ts node.

  • @woodDacha
    @woodDacha 2 ปีที่แล้ว +3

    Спасибо за полезное видео. Подскажите пожалуйста а если я хочу сделать один репозиторий и в нем 2 папки client(React) и server(NodeJs) то получается у меня в каждой будет свой pacage.json, свои папки node.modules и свои настройки для притера и линтера но будет общий файл gitignore в корневой папке, а как быть с хаски где его прописывать? ведь коммит будет для обеих папок и нужно чтобы линтер в обеих сработал, или нужно еще как то третий json в корневую папку? Подскажите как это делать правильно кто знает !!! :)

  • @MDanshin
    @MDanshin 2 ปีที่แล้ว +2

    prettier не заработал, пока его не поставил как Plugin для VS Code

  • @ssurrokk
    @ssurrokk 2 ปีที่แล้ว

    Prettier , для чего он нужен? Ведь ESLint тоже может фиксить код

  • @IntallTv
    @IntallTv 2 ปีที่แล้ว +1

    а где папка .husky
    так как показал точно будет работать?

  • @angrysmilex
    @angrysmilex 2 ปีที่แล้ว

    А что с папкой node_modules? Каждый новый проект будет генерировать новую папку с кучей библиотек и весить по 500мб... Может на pnpm переходить?

    • @DarkzarichV2
      @DarkzarichV2 2 ปีที่แล้ว +2

      Pnpm без ВПН в РФ не установить, санкции

    • @СергейКурганов-о2э
      @СергейКурганов-о2э 2 ปีที่แล้ว

      Как вариант Deno, Rust.

    • @angrysmilex
      @angrysmilex 2 ปีที่แล้ว

      @@СергейКурганов-о2э К сожалению, Deno не востребован в компаниях.

  • @ПетрПетров-ж9е
    @ПетрПетров-ж9е ปีที่แล้ว

    Владилен а что тут нового для 2023?

  • @СергейВ-о8ъ
    @СергейВ-о8ъ 2 ปีที่แล้ว +3

    чето эта хрень с расширением .js выглядит как какой то костыль. Я вообще разочаровался когда переключил на режим module и обнаружил что теперь и расширение надо явно указывать, и папки он не импортирует, если в них index.js лежит

    • @VladilenMinin
      @VladilenMinin  2 ปีที่แล้ว +2

      Согласен, выглядит как костыль. Но это в теории дает возможность работать одновременно с модулями и CommonJS. Например, для миграции проектов

  • @SerhiiDiachenko-d9j
    @SerhiiDiachenko-d9j ปีที่แล้ว

    После добавления type: "module" в package.json получаю ошибку [err_unknown_file_extension]: unknown file extension ".ts".
    Кто-нибудь сталкивался? Как можно исправить?

    • @wlyapa
      @wlyapa ปีที่แล้ว

      можешь убрать строку. У меня без нее все работает

  • @mcamour
    @mcamour 6 หลายเดือนก่อน

    .js как убрать кто нашел?
    кто нашел как импортить модули по названию папки, без index.js?
    вебпак по старинке нужно добавить что ли?
    или более современные esbuild и тд? легче уже на deno перейти.
    Раз в 2-3 года typescript устраивает нам "приколы"

  • @vid253
    @vid253 7 หลายเดือนก่อน

    С появлением Bun можно уже не морочиться с node.js

  • @dionusios05
    @dionusios05 2 ปีที่แล้ว

    Ну очень интересно,➡⌨ но ничего не понятно ‼

  • @rustamimamiev2427
    @rustamimamiev2427 ปีที่แล้ว

    Почему не объяснить с самого начала. Как настроить node для VS Code?

    • @wlyapa
      @wlyapa ปีที่แล้ว

      потому что node устанавливать на пк непосредственно, а не для vscode
      Да и видео називаеться как добавить ts в nodes проект

    • @rustamimamiev2427
      @rustamimamiev2427 ปีที่แล้ว

      @@wlyapa я знаю, что node на ПК непосредственно. Он у меня работает, только у меня не так side bar выглядит..хз почему

  • @The14Some1
    @The14Some1 ปีที่แล้ว

    Очень сложно. Я думал, ts в node можно включить установкой одного-двух пакетов, и всё само по себе заработает.

  • @glagol07r
    @glagol07r 2 ปีที่แล้ว +3

    Капец и это только настройка😨 а в проекте наверняка еще больший кошмар

  • @pauldudich
    @pauldudich ปีที่แล้ว

    как можно было не добавить алиасы в проект 2023 года ..

  • @СемёнД-я3м
    @СемёнД-я3м ปีที่แล้ว +1

    если что noImplicitAny в tsconfig.json автоматически включена, если strict имеет true... npx в package.json scripts? Cерьезно!? xD Ну и жесть... Автор видео не совсем понимает, что он делает... Без обид, но считаю подобные видео инструкции преступлением. Совет смотрящим, проверьте сказанное автором в документации соответствующих инструментов.

    • @zahar1381
      @zahar1381 ปีที่แล้ว

      и чо не так с npx, ты выдумал какое то новое правило?

    • @mcamour
      @mcamour 6 หลายเดือนก่อน

      @@zahar1381 он имеет в виду, что скрипты не должны скомпилиться просто на просто, если из этой папки нет доступа. в частности к локальной, tsc. То есть достаточно написать tsc и npx излишнее. Но мне почему-то понравилась эта конкретика, хоть и не нужная.

  • @МихаилОльховатов-ц3б
    @МихаилОльховатов-ц3б 2 ปีที่แล้ว

    а можно еще видео про альтернативы MongoDB? А то доступ россиянам к этому приложению закрыт

    • @СергейВ-о8ъ
      @СергейВ-о8ъ 2 ปีที่แล้ว

      с какого это перепугу?

    • @astkh4381
      @astkh4381 2 ปีที่แล้ว

      @@СергейВ-о8ъ когда путлер на Украину напал, многие иностранные компании ушли из России, в том числе и Mongo.Без впн туда не зайдёшь.

    • @СергейВ-о8ъ
      @СергейВ-о8ъ 2 ปีที่แล้ว +1

      @@astkh4381 ты бредишь что ли? я только что взял и зашел без всяких VPN

    • @xlyak8261
      @xlyak8261 2 ปีที่แล้ว

      Закрыли MongoDB Atlas, надо искать альтернативные клауд-сервисы

    • @СергейВ-о8ъ
      @СергейВ-о8ъ 2 ปีที่แล้ว +1

      @@xlyak8261 +1 в список пида*асов тогда их. Нечего во вражеском облаке хранить данные, у яндекса аналогичные сервисы есть. Но вообще какой в них смысл если можно на своем сервере поднять БД

  • @N5O1
    @N5O1 2 ปีที่แล้ว +3

    а еще можно использовать nest и не заниматься фигней

    • @grenadier4702
      @grenadier4702 2 ปีที่แล้ว

      о, фрейморкодрочер найден

    • @N5O1
      @N5O1 2 ปีที่แล้ว

      @@grenadier4702 шта?

    • @Илья-э7ю9в
      @Илья-э7ю9в 2 ปีที่แล้ว +1

      nest хорош!)

  • @назаркоцюба-э2п
    @назаркоцюба-э2п 2 ปีที่แล้ว

    может ли человек с IQ 90 стать крутым программистом ????

    • @libertariancom
      @libertariancom ปีที่แล้ว

      Крутым - нет. Клепать однотипные задачи и много зарабатывать - вполне.

  • @phyoogroup
    @phyoogroup 2 ปีที่แล้ว

    1

  • @РинатИдиятов-я3э
    @РинатИдиятов-я3э 11 หลายเดือนก่อน +3

    Для тех у кого не работает nodemon
    "dev": "nodemon -I --exec node --experimental-specifier-resolution=node --loader ts-node/esm ./src/main.ts"

    • @Vlad-sw4zd
      @Vlad-sw4zd 10 หลายเดือนก่อน +1

      Спасибо. Помогло исправить ошибку ERR_UNKNOWN_FILE_EXTENSION.

    • @Ksushapi
      @Ksushapi 10 หลายเดือนก่อน

      немного костыль...`--experimental-loader` may be removed in the future; instead use `register()` Может быть можно проще?

    • @Vlad-sw4zd
      @Vlad-sw4zd 10 หลายเดือนก่อน

      @@Ksushapi чтобы это исправить я сделал следующее.
      1. В /src создал файл register.js с содержимым:
      ```
      import { register } from "node:module";
      register("ts-node/esm", import.meta.url);
      ```
      2. Команду запуска заменил на:
      `npx nodemon -I --exec node --experimental-specifier-resolution=node --import ./src/register.js ./src/main.ts`

    • @Vlad-sw4zd
      @Vlad-sw4zd 10 หลายเดือนก่อน +1

      @@Ksushapi но в итоге мне вообще не понравилась реализация с nodemon и ts-node, потому что при краше у меня не выводится детализация ошибки.
      Так что я нашел более простое решение. Установить пакет tsx и команду запуска заменить на `npx tsx watch src/main.ts`.

    • @Juggerna_ut
      @Juggerna_ut 9 หลายเดือนก่อน

      Золотой ты человек!

  • @kakatak9789
    @kakatak9789 ปีที่แล้ว

    інстОл ...