【发布时间】:2020-06-01 19:43:02
【问题描述】:
花时间找出这个错误的来源。
在一个按钮上,我有ng-click="goUrl('L_1001_1008_1113')"
在控制器(ClubCtrl)中是:
$scope.goUrl = function(id) {
console.log("HereA - "+id) ;
$location.url('/tab/clubs/'+id) ;
console.log("HereB - "+id) ;
}
当我单击按钮时,我在控制台中收到此错误:
这里A - L_1001_1008_1113
这里B - L_1001_1008_1113
ionic.bundle.js:20306 错误:[$parse:ueoe] 意外结束 表达:俱乐部。 http://errors.angularjs.org/1.3.13/$parse/ueoe?p0=club.
at ionic.bundle.js:8762 at Parser.consume (ionic.bundle.js:20747) at Parser.identifier (ionic.bundle.js:20778) at Parser.fieldAccess (ionic.bundle.js:20975) at Parser.primary (ionic.bundle.js:20701) at Parser.unary (ionic.bundle.js:20970) at Parser.multiplicative (ionic.bundle.js:20953) at Parser.additive (ionic.bundle.js:20944) at Parser.relational (ionic.bundle.js:20935) at Parser.equality (ionic.bundle.js:20926)
我只使用了一个地方 club - 它在 detail-club.html 模板页面和该页面控制器 (ClubDetailCtrl) 中。我的状态改变者是:
.state('tab.clubs', {
cache: true,
url: '/clubs',
params: {
'refreshClubs' : 0,
'pushAction' : 0,
'pushSub' : null,
'pushMsg' : null,
'pushCode' : null
},
views: {
'tab-clubs': {
templateUrl: 'templates/tab-clubs.html',
controller: 'ClubCtrl'
}
}
})
.state('tab.club-detail', {
url: '/clubs/:ceID',
views: {
'tab-clubs': {
templateUrl: 'templates/detail-clubs.html',
controller: 'ClubDetailCtrl'
}
}
})
目前,我已经注释掉了 ClubDetailCtrl rxcept 中的所有内容 console.log("HereC"); 试图隔离错误。但是“HereC”永远不会在控制台中触发。所以我知道ClubDetailCtrl 没有发生这个问题。
错误消息很糟糕,并没有指出实际触发它的原因。这个错误是什么,更重要的是如何追踪它?
错误是否来自包含按钮的模板页面?或者它可能来自按钮试图重定向到的模板页面?重定向页面/控制器是唯一只有club 的东西,但我想控制器控制台消息HereC 会在模板页面导致错误之前触发。那么它还能在哪里呢?
【问题讨论】:
标签: javascript angularjs ionic-framework angular-ui-router