5 missing Vue.js features

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

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

  • @winns.x
    @winns.x Месяц назад +7

    What we can learn from that video is that Vue is rock solid and don't miss alot of features, except some niche issues.
    Vapor mode is the most awaited feature, Suspense and better v-model support is nice too!

  • @undertale-15075O
    @undertale-15075O Месяц назад +20

    Typing attrs. defineAttrs()
    I know Volar partially solves this problem. But we need the ability to manually specify types

    • @andreyseluykov4641
      @andreyseluykov4641 Месяц назад +1

      Yes, Volar does not do much with thast problem at all.

    • @ivan.jeremic
      @ivan.jeremic Месяц назад

      fn -> jsx FTW

    • @TheAlexLichter
      @TheAlexLichter  Месяц назад

      Luckily also pending RFC and PR - github.com/vuejs/core/pull/7444

  • @najlepszyinformatyk1661
    @najlepszyinformatyk1661 Месяц назад +6

    the problem with lack of types for DOM events sucks. I was surprised as a React dev that Vue does not come with it

    • @TheAlexLichter
      @TheAlexLichter  Месяц назад +1

      Hopefully just a matter of time - that'd be such a DX improvement

  • @mathiasokafor7318
    @mathiasokafor7318 Месяц назад +1

    i was definitely waiting for suspense because i keep seeing that suspense is an experimental feature

  • @Twister9517
    @Twister9517 24 дня назад

    Hello Alexander, I was wondering if you could do a video or share with us a proper linting setup for a nuxt project

    • @TheAlexLichter
      @TheAlexLichter  23 дня назад +1

      On my list 🙌

    • @Twister9517
      @Twister9517 23 дня назад

      @TheAlexLichter Thanks! It's a really good topic and I can't really find good information about it, the stuff here on RUclips is more than a year old and mostly obsolete by now. Maybe throw some vscode recommendations too 😉

  • @naranyala_dev
    @naranyala_dev Месяц назад

    there are features that are used all the time, and there are those that are very rarely used, but very useful

  • @alphaelf
    @alphaelf 25 дней назад

    how about a concise syntax for SFCs like markojs?

  • @alanscodelog
    @alanscodelog Месяц назад +6

    Make it easier to create properly typed component wrappers. The types situation with these are horrible. Makes it a complete pain to write component libraries.

    • @TheAlexLichter
      @TheAlexLichter  Месяц назад

      Goes in the same direction of defineAttrs in the top comment. PR exists!

  • @TheDeluxeman
    @TheDeluxeman Месяц назад

    Great video, as always.

  • @solomanter
    @solomanter Месяц назад

    Very Helpful, Thanks!

  • @ojoaoprocopio
    @ojoaoprocopio Месяц назад +1

    when you create a sfc that has a root polymorphic component, you can't deal with the polymorphic props, you just looses all of the native types

  • @VELIXYZ
    @VELIXYZ Месяц назад

    Interesting list!

  • @DmitriiBaranov-ib3kf
    @DmitriiBaranov-ib3kf 5 дней назад

    Directives typing!

    • @TheAlexLichter
      @TheAlexLichter  4 дня назад

      What kind of? You can type a directive itself already

  • @mathnewph
    @mathnewph Месяц назад

    The top 🏆 1 🏆 for me would be v-model in a v-for without using the inded trick !

    • @TheAlexLichter
      @TheAlexLichter  Месяц назад

      Which trick? 🤔

    • @mathnewph
      @mathnewph Месяц назад

      @@TheAlexLichter index* like: v-for="(item, index) in items v-model="items[index]"

  • @NathanChase
    @NathanChase Месяц назад +3

    I'm looking forward to Vue no longer needing and to add 'data-v-*' attributes everywhere to make scoped CSS work and just using native @scope instead. Looks like Firefox is the only holdout browser at this point.

    • @TheAlexLichter
      @TheAlexLichter  Месяц назад

      Oh yes, 100% - native scoped CSS will be fun to have!
      Didn’t include it bc Evan mentioned it in the podcast and it only depends on browser support

  • @Chilaxolotl
    @Chilaxolotl 21 день назад +1

    6. No JSX support

  • @SilasDuarte-e9k
    @SilasDuarte-e9k 23 дня назад +2

    Typescript by default? Please don't make boilerplate a standard.

    • @TheAlexLichter
      @TheAlexLichter  21 день назад +1

      As Evan said in ruclips.net/video/xvkf3KOaRlQ/видео.html, you can write a lot of TS without annotating types / without even knowing you write TS, depending on strictness

  • @randomlettersqzkebkw
    @randomlettersqzkebkw Месяц назад +3

    typescript by default? NO

  • @gro967
    @gro967 Месяц назад +1

    Default TypeScript is definitely needed! There is no reason to not use TypeScript in 2024 and native and default TS would be awesome.

    • @TheAlexLichter
      @TheAlexLichter  Месяц назад

      There is an interesting discussion in github.com/vuejs/vue-vapor/issues/198#issuecomment-2102747023, e.g. the comment from Ben is a good point why it might not be useful/good.

  • @RaphaelDDL
    @RaphaelDDL Месяц назад +7

    So “missing vue features” is not really vue missing features at all, is just troublescript whining 😅
    A Vue feature would be “oh, we need a new v-something for this and that”, while “It needs to support my obnoxious verbose fake JS shenanigans” shouldn’t be a “missing vue feature” tbh. 😂

    • @heregundir8292
      @heregundir8292 Месяц назад

      18 minutes 💀

    • @TheAlexLichter
      @TheAlexLichter  Месяц назад

      v-model for dialog/details doesn’t count then I suppose?
      And conditional props aren’t a TS only feature necessarily and should have a runtime equivalent. 🫡

    • @TheAlexLichter
      @TheAlexLichter  Месяц назад

      @heregundir8292 chaptermarks if you want to skip parts ☺️

    • @ivan.jeremic
      @ivan.jeremic Месяц назад

      learn to code kid

    • @masterflitzer
      @masterflitzer Месяц назад

      you have to be another kind of moron to call typescript troublescript or bad or anything, yes it's not like full static typing, but it's the closest we have and dynamic typing is a nightmare as soon as your app has some kind of scale

  • @PabloRodriguez-su4gp
    @PabloRodriguez-su4gp Месяц назад +2

    I hope you don't get you wish regarding typescript by default :P

    • @TheAlexLichter
      @TheAlexLichter  Месяц назад

      That's fine :D I can write lang="ts" (or enforce it automatically) and be happy too 🙊

  • @austincodes
    @austincodes Месяц назад +1

    My top missing feature is more than 1 component per file

    • @TheAlexLichter
      @TheAlexLichter  Месяц назад

      You can with render functions - or with Vue vine!
      vue-vine.dev/

  • @nade3282
    @nade3282 Месяц назад +2

    first problem is solved with generic

    • @victorh5
      @victorh5 Месяц назад

      Can you share an example of that?

    • @TheAlexLichter
      @TheAlexLichter  Месяц назад +1

      I’d be curious too!
      For some use cases it might be but not all

    • @nade3282
      @nade3282 Месяц назад +1

      @@victorh5 my comment is being deleted(

    • @TheAlexLichter
      @TheAlexLichter  Месяц назад +1

      Try without a link. RUclips blocks them automatically I’m afraid.
      Or send me a discord message then I can post it

    • @nade3282
      @nade3282 Месяц назад +4

      @@victorh5
      type DefineType = T extends string ? never : string
      type Props =
      | { one: T; other?: DefineType }
      | { one?: DefineType; other: T }
      defineProps()