我正在尝试用android中的angularjs和phonegap制作基本的应用程序。但它似乎不起作用。下面是我的源码文件:
index.html
<!DOCTYPE html>
<html ng-app="main-app">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>Insert title here</title>
</head>
<body>
<div class="body-content" ng-controller="MainCtrl">
<div class="loader-ajax" ng-show="isViewLoading"></div>
<div ng-view></div>
</div>
<script src="js/angular.js"></script>
<script type="text/javascript" src="js/main.js"></script>
<script type="text/javascript" src="cordova-2.3.0.js"></script>
<script type="text/javascript" src="js/index.js"></script>
<script type="text/javascript">
app.initialize();
</script>
</body>
</html>main.js
var mobileApp = angular.module("main-app", []);
mobileApp.config(function ($routeProvider,$compileProvider) {
$routeProvider
.when("/",
{
templateUrl: "partial/home.html",
controller: "homeController"
})
.when("/home",
{
templateUrl: "partial/home.html",
controller: "homeController"
});
$compileProvider.urlSanitizationWhitelist(/^\s*(https?|ftp|mailto|file|tel):/);
});
mobileApp.controller("MainCtrl",function($scope){
alert('Coming here');
$scope.isViewLoading=true;
});
mobileApp.controller("homeController",function($scope){
alert('Home Coming here');
});index.js
var app = {
initialize: function() {
this.bind();
},
bind: function() {
document.addEventListener('deviceready', this.deviceready, false);
},
deviceready: function() {
// note that this is an event handler so the scope is that of the event
// so we need to call app.report(), and not this.report()
app.report('deviceready');
angular.bootstrap(document, ['main-app']);
},
report: function(id) {
console.log("report:" + id);
}
};当应用程序加载时,路由器似乎无法工作,因为它没有进入Homecontroller。
从我已经准备好的其他地方来看,这段代码应该可以工作。任何帮助都将不胜感激。
发布于 2013-03-27 05:58:53
我也有同样的问题,我刚刚找到了一个解决方案。看一看Angular ng-view/routing not working in PhoneGap
发布于 2013-03-26 10:19:16
将app.initialize();移动到PhoneGap's deviceready event
发布于 2015-07-17 03:13:16
我遇到了这个问题-我被困在上面三个晚上-最终我将路由中的模板名称与实际的文件名进行了比较-确保大小写匹配。
https://stackoverflow.com/questions/15627536
复制相似问题