First, I’m very happy with Ionic so far, it’s a great product, thanks to all those involved.
I just want to share my little disappointment with the last release. It’s still a beta, but I fell the quality went down from the previous releases.
I have straight deactivated the new view caching feature which is too likely to introduce bugs in my opinion. It’s great you thought about this feature and decided to give it a go, but not obvious to me if it should be activated by default, as it’s something that bites you if you don’t know what you’re doing. But this is just my opinion.
What disappoints me is existing components getting less usable than they were.
I had my ionNavBackButton simply showing an icon and no text, all relying on the template
<ion-nav-back-button class="button-icon icon ion-chevron-left">
Upgrading from beta 13 to 14, there’s the previous page title now appearing.
You decided that is the default: fair enough ! Why not. And here I am expecting a directive option to not show any text there…
Nope ! Nothing like this in the docs. I check the source: the directive is now parsing its body to find out if I wrote some custom text, and if not, it will add the previous title. Oh and it also parses its own CSS classes to decide if it should automatically set the left arrow icon, by checking… if one of the classes contains the string “ion-” or “icon” ! This is a surprisingly hacky way of doing things from a team that I know is capable of doing great things. It will get caught by custom classes such as “noiconplease” of course (contrived sample).
Further, why do you make it so hard to get rid of that previous title and icon ? If I want nothing in there, I’ll write nothing as the directive’s body. You are making a simple desire very hard to accomplish, and almost force a specific use-case into being the norm.
The doc was unhelpful but thankfully the forum search works fine and I found this post to help me…
Or at least to put me on the right track. $ionicConfigProvider was the solution, but the documentation was frustrating there too (no, $ionicConfigProvider.backButton.text, icon and previousTitleText methods do not return a string. They return the object itself which allows chaining)
I find that experience contrasts with my previous enjoyment of Ionic. Are you guys stretched too thin ? Are you trying to do too much too quickly ? I know building a framework is hard. I only hope that this drop in quality is just an accident.
My 2 cents for this specific issue: a directive attribute would be a much better fit for configuring the back button than the global config. Something that says: I don’t want automagic things, thank you, leave my directive empty if I write it so.
And once again, thank you for your work so far and sorry for the rant. I looked like a silly angry person but secretly, I am your supporter and wish you guys the best.