AngularJS+;PhoneGap,路由不';行不通
当我使用phonegap时,我在移动电话上遇到路由问题 在浏览器上路由可以工作,但在移动设备上不工作 如果有任何问题,我可以提供更多的代码 route.js:AngularJS+;PhoneGap,路由不';行不通,angularjs,cordova,ngroute,Angularjs,Cordova,Ngroute,当我使用phonegap时,我在移动电话上遇到路由问题 在浏览器上路由可以工作,但在移动设备上不工作 如果有任何问题,我可以提供更多的代码 route.js: app.config(['$routeProvider','$locationProvider','$compileProvider', function($routeProvider,$locationProvider,$compileProvider) { $routeProvider .when('/', {
app.config(['$routeProvider','$locationProvider','$compileProvider', function($routeProvider,$locationProvider,$compileProvider) {
$routeProvider
.when('/', {
templateUrl: '../login.html',
controller: 'loginController'
})
.when('/home',{
templateUrl:'../home.html',
controller:'homeController'
})
.when('/profile', {
templateUrl:'../myprofile.html',
controller:'profileController'
})
.when('/reservations',{
templateUrl:'../reservations.html',
controller:'reservationController'
})
.when('/ordernow',{
templateUrl:'../ordernow.html',
controller:'ordercontroller'
})
.otherwise({
redirectTo: "/home"
});
$compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|chrome-extension):/);
$compileProvider.imgSrcSanitizationWhitelist(/^\s*(https?|ftp|mailto|chrome-extension):/);
}]);
经过几个小时的挣扎:
解决方案:经过几个小时的努力,从templateUrl中删除“./”:
解决方案:从templateUrl中删除“./”我想这个问题可能早就解决了,但我在angular 1.6和cordova android应用程序中遇到了类似的问题 我为templateUrl使用了正确的路径,但路由仍然不起作用 在花了一整天的时间翻阅不同的文件,尝试不同的东西之后,我偶然发现了一个小秘密。我使用谷歌chrome inspect调试cordova应用程序,发现应用程序URL为
file:///android_asset/www/index.html#!/
当我导航到另一个页面时,我会得到URL
file:///android_asset/www/index.html#!/#%2faccounts
然后在调查的时候,我偶然发现
在配置路由器时,我使用了以下命令
$locationProvider.hashPrefix('');
这似乎解决了我的问题。下面的代码片段:
var prakriya=angular.module(“prakriya”,“ngRoute]”);
config(函数($routeProvider,$locationProvider){
$locationProvider.hashPrefix(“”);//在此处添加了一行
$routeProvider
.当(“/”时{
templateUrl:“templates/workspace.html”,
控制器:“工作区”
});
});代码>我想这个问题可能早就解决了,但我在angular 1.6和cordova android应用程序中遇到了类似的问题
我为templateUrl使用了正确的路径,但路由仍然不起作用
在花了一整天的时间翻阅不同的文件,尝试不同的东西之后,我偶然发现了一个小秘密。我使用谷歌chrome inspect调试cordova应用程序,发现应用程序URL为
file:///android_asset/www/index.html#!/
当我导航到另一个页面时,我会得到URL
file:///android_asset/www/index.html#!/#%2faccounts
然后在调查的时候,我偶然发现
在配置路由器时,我使用了以下命令
$locationProvider.hashPrefix('');
这似乎解决了我的问题。下面的代码片段:
var prakriya=angular.module(“prakriya”,“ngRoute]”);
config(函数($routeProvider,$locationProvider){
$locationProvider.hashPrefix(“”);//在此处添加了一行
$routeProvider
.当(“/”时{
templateUrl:“templates/workspace.html”,
控制器:“工作区”
});
});代码>