The Official Ionic Blog

Build amazing native and progressive web apps with HTML5

whoa

Hello, friends! We’re excited to announce the eleventh beta of Ionic 2! Beta 11 includes several bug fixes and enhancements. More importantly, Beta 11 lays the foundation for moving towards a release candidate (we plan to release one more beta before the release candidate). We’ve been busy dotting our i’s and crossing our t’s, double checking every detail to get ready. Take a look at the changelog to see all of the changes. There are some important breaking changes, so please follow these instructions on how to upgrade to Beta 11. Please let us know if you experience any challenges upgrading.

Here’s what you have to look forward to in Beta 11:

Overlays

Overlay components such as Alert, Modal, Popover, etc. should now be created via their injected controller. Rather than creating an Alert using a static method, an AlertController provider is now injected into a component. By injecting overlay providers, it has become much easier to unit test components! See a full list of affected components here.

Tabs

Tabs are updated to match the latest version of the Material Design spec. In other words, Tabs have moved to the bottom of the screen by default when using Material Design. This can be overridden in an app’s config. The config options are detailed in the Beta 11 upgrade instructions.

Angular Upgrade

Ionic is now utilizing Angular RC 4 and takes advantage of the new @angular/forms module. ?

Moving Forward

With Beta 11 out the door, our focus will now turn to Beta 12 and the Ionic 2 release candidate! ? Here’s what you can expect in Beta 12:

Performance Improvements

Ionic 2 will take advantage of Ahead-of-time (AoT) compiling, a technique to pre-process Angular templates. Without AoT compiling, when a template is loaded, it must be parsed and compiled before it can be executed. AoT compiling moves the parsing and compiling step from runtime to the build process, resulting in noticeably quicker start-up times.

In addition to AoT compiling, we’ve come up with a way to take advantage of a faster WebView on iOS called WKWebView, which will result in significant performance improvements. We’re working on the finishing touches right now, and we’ll be ready to share more soon!

URL Support

Making the URL a first-class citizen in Ionic 2 is very important for Progressive Web Apps, so we’ll be spending some time in the next few weeks focusing on this. Stay tuned for more details in the near future!

Build Process Improvements

Beta 12 will debut the new Ionic 2 build process, which will utilize a technique called “tree shaking.” Tree shaking is used to shrink the build output to include only the JavaScript and CSS of the components being used. To utilize tree shaking, we’re migrating from Browserify to Webpack 2. This will result in significantly faster build times and dramatically reduced bundle sizes. The new build will also include TypeScript 2.0 and the use of npm to manage type definitions.

We’ll be sharing additional details on the new build process shortly—we’re really excited about it!

Conclusion

We’re looking forward to delivering a high quality release candidate in the coming weeks, and we want to say thank you to the community for all of the great contributions, via GitHub issues and pull requests. It is an incredible privilege to work with such an awesome community!

  • Guilherme Rodrigues

    o/o/.. great.. thanks a lot guys

  • Maxi Villarreal

    Great to hear about the upcoming IOS performance gain. As for Beta11, congrats!

    • danbucholtz

      That’s the thing I’m most excited about. WKWebView on iOS is a huge step forward for Ionic. I think Ionic users are really going to love it. Apps run much faster and are more responsive, better scrolling, etc

      • Stéphane Chan-kam

        Can’t wait to see that !

  • forextor

    Lol…. that GIF!…. next you should do something like… “Make Ionic Great Again…” oh wait… Ionic was always great… never mind then…

  • http://matheo.co Mateo Tibaquirá Palacios

    Thanks for the hard work guys!
    looking forward to contribute testing the next release 😀

  • http://nicholls.azurewebsites.net/ Juan David Nicholls

    Thanks for the excellent news! 😀

  • jimitndiaye

    Glad you finally upgraded to the new forms module but the overlay changes seem to have broken my app, even after applying the necessary code changes (e.g using AlertController.create, then alert.present rather than NavController.present). Also the decision to make overlays app-wide rather than constrained by the containing NavController is a step back in my opinion. Is there a way to achieve the old behavior in beta.11?

    • danbucholtz

      `AlertController` as well as other overlay controllers are injected via Constructor injection. Check out the Changelog for some examples. No, there is no way to revert back to the old behavior. The changes here needed to be made.

      Thanks,
      Dan

  • aadil

    Great, thanks for hard work guys!

  • Fernando Muñoz

    Thank!

  • Stéphane Chan-kam

    Mmhh, I’ve got a weird problem with a Modal displaying a page with a Facebook login button (I am using ionic-native).

    When I call Facebook.login, I got this error in the console:

    Uncaught TypeError: Cannot read property ‘apiKey’ of null, http://192.168.6.6:8100/build/js/zone.js, Line: 260

    Nevertheless, the login callback is called, and I want then to dismiss the modal by calling:

    this.viewCtrl.dismiss();

    But this is not working anymore.

    I also have a “Close” button on this page, which is calling “this.viewCtrl.dismiss();” as well, and it is working. Looks like the error I got previously is causing the issue.

    It was working before the update; The only difference I see here is an update of ionic-native.

    Am I missing something ? Is there an other way to dismiss the modal since the new Overlay component API ?

  • Binarch Webdesigner

    Thanks for hard work! waiting for Swipe/sliding tab like Material Design spec.

  • Akilan Arasu

    Thanks for the great work guys! Can you point me to some resources on how I can use webpack 2 in my current Ionic 2 app?

  • Dan

    This was a good release, thanks guys

  • Aamir

    Still no support for new Angular router 🙁

  • 陳彥澄

    Is there a demo app with Plunker?

  • Dimus7

    Thanks for the great work!
    Is there any news about slider’s pinch-to-zoom possibility? Some apps are really useless without this feature (for example, online magazines apps).
    https://github.com/driftyco/ionic/issues/5039

  • James Trigg

    Good work! Where can I find a good tutorial on using forms with beta11. I had a lot of problems trying to get the new forms working with ion-input?

  • Marius ‘Romania’ Talpos

    Would transferring a beta.10 app to beta.11 break lots of things?

  • Jeffrey James

    I admittedly haven’t been following much of the progress of the betas for ionic 2 but I have a question regarding android. I am happy to see that you’re making great strides in improving iOS performance but my concern is with android performance. I have been developing an ionic app, starting with one of the late betas for ionic 1 and when I see performance woes, it’s with android. iOS always seems to be so much better.

    I suppose my question is this: have you also made great strides with android performance in ionic 2?

    • Muji Al-okaidi

      In Ionic iOS seems to have slight performamce issues.
      Android is far better when it comes to performance

  • Purple Edge

    If I call a modal window, passing parameters as…

    getSignatureModal.present({ev: event});

    …how do I access the parameter in the modal window?

  • Andreza Pollyana

    I dont know why but, I have an alert that when I call it and press confirm (or any button) and after this I press the back button on the top of the screen the alert show up again and closes, I have to press the backbutton again to really come back to the other page.

  • Luciano Guillermo Fantuzzi

    thanks. waiting for being able to disable page caching in tabs like ionic v1

  • Eduardo Vieira

    Muito bom!!

  • Eduardo Vieira

    I am here in Brazil and enjoyed the ionic