gpt4 book ai didi

javascript - 如何跟踪不伦不类的 ueoe angularjs 错误

转载 作者:行者123 更新时间:2023-12-02 21:45:50 25 4
gpt4 key购买 nike

我在我的应用程序的下一版本中引入了一个问题,但我一生都看不到它是什么。

我有一个ng-repeat列出了几个选项,每个选项都有一个按钮可以更详细地显示选项信息。每个选项都有一个带有如下链接的按钮:

ng-click="$location.url('/tab/clubs/L_1001_1001_1001')"

在我的 Controller 中,我正在分配导入的 $location至:$scope.$location = $location ;但当我点击链接时,我收到以下错误:

ionic.bundle.js:20306 Error: [$parse:ueoe] Unexpected end of expression: club. 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.有关。不知怎的——但我不知道是什么。该错误意味着我缺少结束括号或大括号,但我运行了外部工具来检查所有语法,一切看起来都不错。

上面的链接是从tab-clubs.html调用的( Controller :ClubCtrl)-整个页面呈现良好并且没有跟踪任何问题。该链接使用状态调用特定 Controller /模板:

  .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我添加了一些基本的console.log("Here")消息只是为了查看它是否进入 Controller ,但似乎没有。因此,在单击链接和调用 Controller 之间似乎有些令人窒息。

更新:

所以我将 $location.url(...) 移至 Controller 函数并将模板重新编码为:

ng-click="goUrl('L_' +event.cID+ '_' +event.clID+ '_' +event.ceID);"

Controller 中现在有:

$scope.goUrl = function(id) {
console.log("A: " +id) ;
$location.url("/tab/clubs/" +id) ;
console.log("B: " +id) ;
}

ng-click 正在触发并进入 Controller 功能,均为 console.log AB正在显示 - 但仍然遇到相同的错误。然后我添加测试 console.log()下一个 Controller 中的代码和测试控制台日志消息永远不会触发 - 因此它甚至不会进入 Controller 。

我还能如何追踪这个?

最佳答案

ERRONEOUS

ng-click="$location.url('/tab/clubs/L_{{event.cID}}_{{event.clID}}_{event.ceID}}')"

更好

ng-click="$location.url('/tab/clubs/L_'+ event.cID +'_'+ event.clID +'_'+ event.ceID)"

欲了解更多信息,请参阅

<小时/>

更新

通过创建 Controller 方法并从 View 中调用该方法来简化模板:

 ng-click="onClick(event)"
 $scope.onClick = function(event) {
var url = '/tab/clubs/L_'+ event.cID +'_'+ event.clID +'_'+ event.ceID;
$location.url(url);
};

这将使代码更易于理解、测试、调试和维护。

关于javascript - 如何跟踪不伦不类的 ueoe angularjs 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60255005/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com