ui路由器angularjs面临一些奇怪的问题。我正在使用这些框架配置单页应用程序。
这是我的代码

function initWmappConfig($stateProvider, $locationProvider, $compileProvider) {
    $locationProvider.html5Mode(true);
    $stateProvider.
        state('login', { url: '/', templateUrl: '/Views/login', controller: 'login-controller', controllerAs: 'vm' })
        .state('register', { url: '/register', templateUrl: '/Views/Register', controller: 'login-controller', controllerAs: 'vm' });

    $stateProvider.state('otherwise', {url: '/'});

    $compileProvider.debugInfoEnabled(false);
}


如果我使用上述配置,我将面临这场战争


  警告:尝试多次加载角度


但另一方面,如果我简单地改变

$locationProvider.html5Mode(false);


然后一切似乎都很好...

请让我知道为什么会这样。

谢谢

最佳答案

这是因为您没有在templateUrl中提及.html扩展名

  state('login', { url: '/', templateUrl: '/Views/login.html', controller: 'login-controller', controllerAs: 'vm' })
  .state('register', { url: '/register', templateUrl: '/Views/Register.html', controller: 'login-controller', controllerAs: 'vm' });


同样对于otherwise,您需要使用$urlRouterProvider

$urlRouterProvider.otherwise('/');

关于javascript - 警告:试图多次加载 Angular 。 ui路由器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29238463/

10-10 03:28