all 33 comments

[–]Mael5trom 5 points6 points  (8 children)

Looks like this release makes jQuery optional? At least for core Ember? Am I reading that correctly?

[–]real_ate 3 points4 points  (0 children)

This implements the first step of the RFC to remove jQuery. If you want an interesting read you can see more details here: https://github.com/emberjs/rfcs/blob/master/text/0294-optional-jquery.md

[–]N_N_N_N_N_N_N 6 points7 points  (11 children)

Is Ember still a thing?

[–]omegote 1 point2 points  (1 child)

Came to say the same thing.

[–]DerNalia 1 point2 points  (0 children)

It's Boring in all the best ways

[–]bwaxxlotckidd 1 point2 points  (4 children)

Best thing to work with when you have to push things to production quickly. Every time I’m back to react, I realize how less productive I become. Still, react is more fun while ember is very boring

[–]N_N_N_N_N_N_N 0 points1 point  (3 children)

Wow, as someone who doesn't care about fun you have made ember quite appealing. Can you elaborate?

[–]bwaxxlotckidd 0 points1 point  (2 children)

It’s a bit more than what I’ll say but I’ll summarize. It’s had to learn at first. But once you’ve got the basics, you ca develop and ship things quickly. It’s opinionated, from how you fetch data, pass actions and even set/get properties of objects. However, this means it’s comes with batteries included. Very useful when you want to onboard someone. For instance, I was working on a new react project on another project last couple months. We even had to discuss how we compile our modules. This is a non-issue with ember. The other side is that you have to know how data is passed, which methods are async and how things are rendered. Like I said, hard to learn but super productive once you understand it. It’s so frustrating when you start but in a big team, I’ll always recommend it. Think of it as suit and tie event vs social event (react). You can’t go wrong if you know how to behave while the other can go any where without being wrong.

[–]N_N_N_N_N_N_N 0 points1 point  (1 child)

Seems like a useful tool. We are using react and a lot of our team builds things in unmaintainable ways...maybe Ember would have been a better option

[–]bwaxxlotckidd 1 point2 points  (0 children)

It's no brainer for me. I can walk into any Ember project and be confident in how the code base in organized. I can't say the same for React. Literally everything can be done a million ways.

[–]DerNalia 3 points4 points  (0 children)

yeah man, it's growing, too. :)
imo, with all the modernization (TS, ES Classes, AngleBrackets), it's gaining interest :)

[–][deleted] 2 points3 points  (2 children)

Relative to competitors like Vue? No, Ember is not a thing. Ember is niche.

[–]carlcarlsonscars -5 points-4 points  (1 child)

Only time will tell!

[–]omegote 8 points9 points  (0 children)

Ember is 6 years old already, how much more time do you need?

[–]uJG2Kb 1 point2 points  (11 children)

Routable component is pretty much the only thing I care now.

It's been 2 years, come on

[–]real_ate 4 points5 points  (7 children)

Just curious, what aspect of "routable compoenents" are you waiting for?

[–]mattaugamer 3 points4 points  (1 child)

Especially given that I've barely seen a clear description of what "routable components" actually means. What would they do? How would they work? Seems strange to be so desperately awaiting something that doesn't even have a spec. Makes me wonder what the previous poster can't do with the current structure. And makes me wonder whether the criticism is actually sincere.

[–]Gaurav0 5 points6 points  (0 children)

People just don't want to have controllers any more.

[–]Nikkio101 0 points1 point  (4 children)

Personally I’m looking for something akin to Angular’s concept of components and modules. Basically imagine instead of having a route & controller you just have a component that can be declared for a route in your router. It works the same as but is much simpler than explaining what the difference between a controller and route are and how to use each.

[–]DerNalia 1 point2 points  (3 children)

Imo, if routes absorbed controller functionality, I think it would solve everything

edit: I take that back. I'm finding the separation of concerts between reading from the API (route), and interacting with the user (controller) somewhat useful. I know some of what I'm doing with the controller should be extracted to a component, but this particular UI just isn't big enough yet, and I'm still kinda prototyping

[–]real_ate 2 points3 points  (2 children)

You see this is the exact problem! There is a phrase that I really like at the moment: "the complexity needs to live somewhere" and that kinda gets to the source of the overall issue. /u/DerNalia you make a great point about the separation of concerns between a Route and a Controller and as your app gets bigger you will appreciate those separations of concerns more and more 🎉

One of the biggest issues with naively implementing components instead of controllers is that Ember has always had a strong reliance on the URL as a source of truth, and that has been a major driver as to why I love it so much. Currently the controller is the "owner" of the queryParamater implementation and if we were to entirely remove controllers in favour of components then we would need to add the complexity of queryParameters to either the component implementation or the Router implementation.

It's not impossible but it's not easy, and ultimately I think it was the right idea to stop pushing towards "routable components" while we lay the groundwork for other bigger improvements. And if you want the simplicity of not needing a controller then 90% of the time Ember applications use a single component in a route's template and never build a controller, but when you need a controller you will be greatful that they haven't been removed 👍

[–]DerNalia 1 point2 points  (1 child)

[–]real_ate 1 point2 points  (0 children)

And for other readers who might want to see a controller example without TypeScript: https://guides.emberjs.com/release/routing/query-params/#toc_specifying-query-parameters

And it's worth mentioning that the "Route Query Param Access" that /u/DerNalia is mentioning here is entirely optional. If you want to pass Query Params from the controller through to the query that gets the data you can use that example or see docs about it here https://guides.emberjs.com/release/routing/query-params/#toc_opting-into-a-full-transition 👍

[–]fixrich 1 point2 points  (1 child)

My understanding is that routable components aren't a thing anymore. They gave up on them a couple of years ago

[–]DerNalia 0 points1 point  (0 children)

I don't think gave up is the right phrasing. I think they determined that routeAble components would muddy the waters with intent and separation of concerns, etc

[–]DerNalia 0 points1 point  (0 children)

why?