The Good, The Bad, and The Web Components - Zach Leatherman | JSHeroes 2023

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

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

  • @CodecrafterArtemis
    @CodecrafterArtemis Год назад +10

    I'm a bit miffed that, when they talk about "server-side" they specifically talk about NodeJS-exclusive solutions and static site generators instead of things that can integrate with backend frameworks (Rails, Flask, Django, etc).

    • @patricknelson
      @patricknelson 10 месяцев назад +2

      With you on this. I run mostly PHP on the server side, but implement web components + Svelte on the client side. What’s more is that there are other JS runtimes and environment types (e.g. Cloudflare workers or WinterJS/WinterCG).
      Interestingly, runtimes _like_ those which are WinterCG compatible offer opportunities for SSR of JS-bound things (like web components) without necessarily having to have JS as your “back-end”. In this case, there are 3 total layers now (a traditional back-end, traditional front-end and a middleware layer of some sort to perform component SSR). It’s something I’m working on myself in my free time (sorta rare, but still an ongoing thing). 😅

  • @antonio_carvalho
    @antonio_carvalho 9 месяцев назад +1

    Great talk, a pleasure to watch, thank you!

  • @sambines3463
    @sambines3463 Год назад +28

    I am moving away from a lot of these frameworks to web components. I got sick of the constant bullshit with vue/angular/react specific crap.

    • @patricknelson
      @patricknelson 10 месяцев назад +1

      Web components, while not quite as elegant in some ways as modern frameworks, they have one *huge* thing going for them: They’re a standard.
      That means that they’re here to stay. They work great to sorta bridge the gap as well, in many different ways, including between heterogeneous back-ends (like Ruby, PHP, Python, etc) and even between JS frameworks which support rendering custom elements.

  • @andypsolomon
    @andypsolomon Год назад +3

    this guy is hilarious, so much that i didn't learn anything i was just laughing the whole time. gonna have to watch again.

    • @pookiepats
      @pookiepats 3 месяца назад

      i find the endless sarcasm so annoying, different strokes. 😊

  • @dovh49
    @dovh49 4 месяца назад

    What I'd really like is:
    Button will not work as scripting is not working.
    1
    The traits attribute could have multiple values space delimited. This way I don't have to junk up all my HTML with tags. Just add an attribute. Nice and simple. I know there is the `is` attribute. But it only allows for one trait and Safari says they refuse to implement it. But normally I only use one trait so, I suppose I could just polyfill it for now... But I think a lot of library creators don't use it since Safari refuses to implement it.

  • @thekeyexchange
    @thekeyexchange 19 дней назад

    I couldn't stop noticing how much Zach sounds similarly to Nick Swardson...

  • @heybran_
    @heybran_ Год назад +2

    :host-context() selector is depreciated I believe, there is a github issue for that.

    • @zachleat
      @zachleat Год назад +2

      Do you have a link?

  • @nathanmiddleton1478
    @nathanmiddleton1478 Год назад +2

    I'm no expert, just a foggy from the 90s. How is it "server rendered"? The server doesn't layout the page, the server doesn't calculate the DOM. All the server is doing is caching and pushing data. Rendering of everything else is on the client, yes?

    • @benighted2
      @benighted2 Год назад +6

      The term/phrase has come to mean declaring/generating markup dynamically on the web server vs the client.

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

      You can think of it like "rendering" a template. You're right that none of the layouting-related decisions are done on the server's side.

    • @patricknelson
      @patricknelson 10 месяцев назад

      To add to that: With the “server rendered” declarative shadow DOM, the component will take on the appearance defined in that HTML/CSS even if JavaScript isn’t even enabled. This is in contrast with the traditionally “client rendered” version where JS would still be required to execute and set the contents of the shadow DOM.

    • @antonio_carvalho
      @antonio_carvalho 9 месяцев назад +1

      It's rendering the *html code* in the server, instead of using javascript locally. It's not about the visual rendering that the browser does.

    • @thearturotoledo
      @thearturotoledo 3 месяца назад

      I agree. Kids use wrong terminology to describe things. It's like software development wokeness.

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

    common yellow tint

  • @dirtdart81
    @dirtdart81 4 месяца назад +2

    Why does this guy sound so terrified and nervous? It is really distracting

    • @KalibMartin-f5m
      @KalibMartin-f5m 3 месяца назад

      I was thinking the same thing. Lol
      😂😂

  • @pookiepats
    @pookiepats 3 месяца назад

    get to the point holy hell