Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> The only difference is naming and minor semantics differences

I don't agree at all. There are no naming/semantics for doing renderless in React. React has no analogue for "slots" because it's just naturally part of the framework. It's as simple as doing:

   <LinkList renderLink={(linkProps) => <div>...</div>} />
No extra terminology to learn, no slot keys, extra attributes, or rendering magic, and definitely not something you need a whole article to explain.


That's a basic example which doesn't address the topics discussed in the article at all. The same is just as easy in Vue, even with identical property names if you like.

    <link-list :render-link="(props) => ..." />
The whole idea of renderless is to move beyond this very limited and crude approach for library code where you might need to override only small bits of the logic or all of the logic, depending on your use case. At the moment I can't help but feel you've missed the core ideas of the article and we're discussing completely different points.


Why would you want to use slots, then? It's just extra steps for the same functionality.

> The whole idea of renderless is to move beyond this very limited and crude approach for library code where you might need to override only small bits of the logic or all of the logic, depending on your use case

Not at all. For example, react-select does this super seamlessly: https://react-select.com/components

I guess what I'm trying to say is I don't understand why it seems so complicated in Vue.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: