2016-04-26 49 views
0

我正在使用angularjsangular-ui-router创建一个Chrome应用程序。Angular UI路由器不适用于Chrome应用程序

app.js

var foo = angular.module('foo', [ 
    'ui.router', 
]) 
.config(['$stateProvider', '$locationProvider', 
    function($stateProvider, $locationProvider) { 

    console.log("This works fine."); 

    $stateProvider 
     .state('login', { 
      url: '/', 
      templateUrl: 'modules/login/templates/login.html', 
      controller: 'loginController' 
     }) 

}]) 

login.js

foo.controller('loginController', 
    ['$scope', 
    function($scope){ 

    console.log("This should be printed on the console."); 

}]) 

window.html

<!DOCTYPE html> 
<html ng-app="mycurechrome"> 
<head> 
    <meta charset="utf-8"> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 

    <script src="components/chromestrap/js/jquery-2.0.3.min.js"></script> 
    <script src="components/chromestrap/js/bootstrap.min.js"></script> 

    <script src="bower_components/angular/angular.min.js"></script> 
    <script src="bower_components/angular-ui-router/release/angular-ui-router.min.js"></script> 

    <script src="app.js"></script> 
    <script src="modules/login/controllers/login.js"></script> 

    <link href="components/chromestrap/css/bootstrap.min.css" rel="stylesheet"> 
    <link href="css/window.css" rel="stylesheet"> 

</head> 
<body> 
    <div ui-view></div> 
</body> 
</html> 

个manifest.json的

{ 
    "name": "foo", 
    "description": "bar", 
    "version": "0.1", 
    "manifest_version": 2, 
    "app": { 
     "background": { 
      "scripts": [ 
       "background.js" 
      ] 
     } 
    }, 
    "icons": { "16": "icon-16.png", "128": "icon-128.png" } 
} 

background.js

chrome.app.runtime.onLaunched.addListener(function() { 
    chrome.app.window.create('window.html', { 
     'outerBounds': { 
      'width': 1000, 
      'height': 600 
     } 
    }); 
}); 

app.jsconsole.log("This works fine.");是excuted,但对login.js日志()不是。

我不认为我使用ui-router错了,但我很怀疑,因为可能有不同的谷歌浏览器应用程序的方法。

回答

2

尝试导航到登录状态,如果是你的默认状态的尝试:

.config(['$stateProvider', '$locationProvider', '$urlRouterProvider', 
    function($stateProvider, $locationProvider, $urlRouterProvider) { 

    console.log("This works fine."); 
    $urlRouterProvider.otherwise('/login'); 
    $stateProvider 
     .state('login', { 
      url: '/login', 
      templateUrl: 'modules/login/templates/login.html', 
      controller: 'loginController' 
     }); 

}]); 
+0

OMG感谢兄弟! :) – CENT1PEDE

相关问题