我使用角度js和jquery mobile在PhoneGap上开始了我的项目。不知何故,路由工作正常,我用Google搜索并遇到了jquery mobile和angularjs here之间的冲突。
这是我得到的错误:
11-25 12:31:49.628: E/Web Console(7122): TypeError: Cannot call method 'charAt' of undefined
11-25 12:31:49.628: E/Web Console(7122): at Object.LocationHashbangUrl.$$parse (file:///android_asset/www/lib/angularjs/angular.js:9321:41)
11-25 12:31:49.628: E/Web Console(7122): at file:///android_asset/www/lib/angularjs/angular.js:9878:21
11-25 12:31:49.628: E/Web Console(7122): at Scope.$eval (file:///android_asset/www/lib/angularjs/angular.js:12701:28)
11-25 12:31:49.628: E/Web Console(7122): at Scope.$digest (file:///android_asset/www/lib/angularjs/angular.js:12513:31)
11-25 12:31:49.628: E/Web Console(7122): at file:///android_asset/www/lib/angularjs/angular.js:9887:45
11-25 12:31:49.628: E/Web Console(7122): at file:///android_asset/www/lib/angularjs/angular.js:4539:7
11-25 12:31:49.628: E/Web Console(7122): at forEach (file:///android_asset/www/lib/angularjs/angular.js:325:18)
11-25 12:31:49.628: E/Web Console(7122): at fireUrlChange (file:///android_asset/www/lib/angularjs/angular.js:4538:5)
11-25 12:31:49.628: E/Web Console(7122): at m.event.dispatch (file:///android_asset/www/lib/jquery.js:3:8436)
11-25 12:31:49.628: E/Web Console(7122): at r.handle (file:///android_asset/www/lib/jquery.js:3:5139) at file:///android_asset/www/lib/angularjs/angular.js:10071
是否有任何替代方法可以使这两者协同工作?
我正在使用1.2.25 angularjs和jQuery Mobile 1.4.5。
我的路线:
app.config(function($routeProvider, $locationProvider) {
$routeProvider
.when('/', {
templateUrl: 'assets/login/login.html',
controller: 'LoginController',
});
});
如果我将默认路线更改为:
app.config(function($routeProvider, $locationProvider) {
$routeProvider
.when('/login', {
templateUrl: 'assets/login/login.html',
controller: 'LoginController',
});
});
然后它就像魅力一样。
答案 0 :(得分:0)
@QuickFix 谢谢我删除了JQM路由,它就像魅力一样。
答案 1 :(得分:0)
我最初通过引入
来解决同样的问题serviceApp.config(['$routeProvider',
function($routeProvider){
$routeProvider.
when('/services',{
templateUrl : 'partials/services.html',
controller : 'servicesCtrl'
}).
when('/service/:id',{
templateUrl : 'partials/service-details.html',
controller : 'serviceDetailsCtrl'
}).otherwise({
redirectTo: '/services'
});
}]);
但在其他情况下仍然面临同样的问题,然后在搜索谷歌后,弄清楚似乎jquery mobile和angularjs不兼容,但仍然需要jquery mobile进行某些操作,所以然后下载所需的jquery mobile模块我们需要触摸支持,然后单独使用模块