小编tti*_*ani的帖子

AngularJS和PhoneGap:$ location.path导致后续的tempateUrl查找失败

我在使用AngularJS v1.2.0和PhoneGap/Cordova Android应用程序进行路径查找时遇到问题.html5mode(true)通过<base href="."/>在index.html中设置然后更改$routeProvider.when('/')为,我已经相当远了$routeProvider.when('/android_asset/www/index.html').在那之后,我能够redirectTo('login')达到$routeProvider.when('/login')并按templateUrl: 'static/partials/login.html'预期进行渲染.

$location.path('/login');遇到的问题是,如果我尝试从我的Javascript代码重定向到登录页面,则会找到路由但是templateUrl加载失败并出现insecurl异常.

我已经尝试使用新的angular-sanitize模块将文件列入白名单来访问://但这没有用.

我怎样才能$location.path()做同样的事情,redirectTo以便加载部分?或者还有其他方法可以解决这个问题吗?

更新:我通过在路径函数之后添加对replace()的调用来向前推进,例如:

$location.path('/login').replace();

但这似乎是一个黑客,它仍然导致其他路由中的templateUrl失败并出现相同的异常.

关于可能出错的任何想法?是不是html5mode(true)只是在这个时候用Phonegap不起作用,解决这个问题的唯一方法是将它设置为false并将hashtags添加到每个路径(就像在angular phonegap 种子项目中完成的那样)?

angularjs cordova angularjs-routing

10
推荐指数
1
解决办法
3983
查看次数

标签 统计

angularjs ×1

angularjs-routing ×1

cordova ×1