Ionic fails to load after upgrade from b1 to b14

Hello.

Today I’ve tried to upgrade a project from beta1 to beta14, but now it fails to load with following error:

Error: [$injector:nomod] Module 'ionic.ui.sideMenu' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.

The full stack:

    Uncaught Error: [$injector:modulerr] Failed to instantiate module app due to:
Error: [$injector:modulerr] Failed to instantiate module app-header due to:
Error: [$injector:modulerr] Failed to instantiate module app-header.controller due to:
Error: [$injector:modulerr] Failed to instantiate module ionic.ui.sideMenu due to:
Error: [$injector:nomod] Module 'ionic.ui.sideMenu' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.
http://errors.angularjs.org/1.3.6/$injector/nomod?p0=ionic.ui.sideMenu
    at REGEX_STRING_REGEXP (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:7888:12)
    at http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:9576:17
    at ensure (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:9500:38)
    at module (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:9574:14)
    at http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11906:22
    at forEach (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:8147:20)
    at loadModules (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11890:5)
    at http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11907:40
    at forEach (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:8147:20)
    at loadModules (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11890:5)
http://errors.angularjs.org/1.3.6/$injector/modulerr?p0=ionic.ui.sideMenu&p…host%3A8080%2Fij-srv%2Fionic%2F1.0.0.beta14%2Fionic.bundle1.js%3A11890%3A5)
    at REGEX_STRING_REGEXP (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:7888:12)
    at http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11929:15
    at forEach (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:8147:20)
    at loadModules (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11890:5)
    at http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11907:40
    at forEach (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:8147:20)
    at loadModules (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11890:5)
    at http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11907:40
    at forEach (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:8147:20)
    at loadModules (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11890:5)
http://errors.angularjs.org/1.3.6/$injector/modulerr?p0=app-header.controll…host%3A8080%2Fij-srv%2Fionic%2F1.0.0.beta14%2Fionic.bundle1.js%3A11890%3A5)
    at REGEX_STRING_REGEXP (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:7888:12)
    at http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11929:15
    at forEach (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:8147:20)
    at loadModules (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11890:5)
    at http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11907:40
    at forEach (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:8147:20)
    at loadModules (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11890:5)
    at http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11907:40
    at forEach (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:8147:20)
    at loadModules (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11890:5)
http://errors.angularjs.org/1.3.6/$injector/modulerr?p0=app-header&p1=Error…host%3A8080%2Fij-srv%2Fionic%2F1.0.0.beta14%2Fionic.bundle1.js%3A11890%3A5)
    at REGEX_STRING_REGEXP (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:7888:12)
    at http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11929:15
    at forEach (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:8147:20)
    at loadModules (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11890:5)
    at http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11907:40
    at forEach (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:8147:20)
    at loadModules (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11890:5)
    at createInjector (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:11816:11)
    at doBootstrap (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:9263:20)
    at bootstrap (http://localhost:8080/ij-srv/ionic/1.0.0.beta14/ionic.bundle1.js:9284:12)
http://errors.angularjs.org/1.3.6/$injector/modulerr?p0=app&p1=Error%3A%20%…host%3A8080%2Fij-srv%2Fionic%2F1.0.0.beta14%2Fionic.bundle1.js%3A9284%3A12)ionic.bundle1.js:7888 REGEX_STRING_REGEXPionic.bundle1.js:11929 (anonymous function)ionic.bundle1.js:8147 forEachionic.bundle1.js:11890 loadModulesionic.bundle1.js:11816 createInjectorionic.bundle1.js:9263 doBootstrapionic.bundle1.js:9284 bootstrapionic.bundle1.js:9178 angularInitionic.bundle1.js:33820 (anonymous function)jquery-1.9.1.js:1037 jQuery.Callbacks.firejquery-1.9.1.js:1148 jQuery.Callbacks.self.fireWithjquery-1.9.1.js:433 jQuery.extend.readyjquery-1.9.1.js:103 completed

I’ve manually copied the bundle file from the repository. What could be possibly causing this problem?

P.S. The app-header module utilizes $ionicSideMenuDelegate. It worked fine before.

hi,
read this blog for migrate to ionic beta 14 ,
http://ionicframework.com/blog/navigating-the-changes/

Thank you for the link, but does that mean that I can’t use side-menus anymore? I used the left one for navigation, and the right one for settings, stats, etc.

you can ,

<ion-side-menus enable-menu-with-back-views="false">

<ion-side-menu-content>
  <ion-nav-bar class="bar-positive">
    <ion-nav-back-button>
    </ion-nav-back-button>
    <ion-nav-buttons side="left">
      <button class="button button-icon button-clear ion-navicon" menu-toggle="left">
      </button>
    </ion-nav-buttons>
  </ion-nav-bar>
  <ion-nav-view name="menuContent"></ion-nav-view>
</ion-side-menu-content>

<ion-side-menu side="left">
  <ion-content>
    <ul class="list">
      <a href="#/event/check-in" class="item" menu-close>Check-in</a>
      <a href="#/event/attendees" class="item" menu-close>Attendees</a>
    </ul>
  </ion-content>
</ion-side-menu>

</ion-side-menus>
2 Likes

Bumping this thread again, because there is zero advice on actual migration in the article. How do I get rid of the exception?

can you provide your main app module

Nevermind, I just use the following now:

   <ion-tabs class="tabs-positive tabs-icon-top">
        <ion-tab title="{{'general' | i18n}}" icon-on="ion-ios7-calendar" icon-off="ion-ios7-calendar-outline" on-select="csCtrl.onTabSelected()">

        </ion-tab>
        <ion-tab title="{{'axes' | i18n}}" icon-on="ion-ios7-gear" icon-off="ion-ios7-gear-outline" on-select="csCtrl.onTabSelected()">

        </ion-tab>
        <ion-tab title="{{'markers' | i18n}}" icon-on="ion-ios7-flag" icon-off="ion-ios7-flag-outline" on-select="csCtrl.onTabSelected()">

        </ion-tab>
    </ion-tabs>

And use ng-show to create my own pane. It may be a dirty hack, but it works for now.