Javascript 如何跟踪不起眼的ueoe angularjs错误

Javascript 如何跟踪不起眼的ueoe angularjs错误,javascript,angularjs,ionic-framework,angular-ui-router,Javascript,Angularjs,Ionic Framework,Angular Ui Router,我在下一个版本的应用程序中引入了一个问题,我一辈子都看不到它是什么 我有一个ng repeat,它列出了几个选项,每个选项都有一个按钮来更详细地显示选项信息。每个选项都有一个带有如下链接的按钮: ng-click="$location.url('/tab/clubs/L_1001_1001_1001')" 在我的控制器中,我将导入的$location分配给:$scope.$location=$location;但当我点击链接时,我得到了以下错误: ionic.bundle.js:20306错误

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

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

ng-click="$location.url('/tab/clubs/L_1001_1001_1001')"
在我的控制器中,我将导入的$location分配给:$scope.$location=$location;但当我点击链接时,我得到了以下错误:

ionic.bundle.js:20306错误:[$parse:ueoe]表达式意外结束:club。

如何跟踪引发此错误的原因?显然,它与俱乐部有关。不知怎么的,但我不知道是什么。这个错误意味着我缺少一个结束括号或花括号,但我运行了外部工具来检查我的所有语法,一切看起来都很好

上面的链接是从tab-clubs.html控制器调用的:ClubCtrl-整个页面呈现良好,没有跟踪任何问题。该链接使用以下状态调用特定控制器/模板:

  .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.logHere消息,只是为了查看它是否进入控制器,而看起来它不是。因此,它似乎在点击链接和调用控制器之间的某个地方受阻

更新: 所以我移动了$location.url。。。添加到控制器功能,并将模板重新编码为:

ng-click="goUrl('L_' +event.cID+ '_' +event.clID+ '_' +event.ceID);"
在控制器中,现在有:

$scope.goUrl = function(id) {
   console.log("A: " +id) ;
   $location.url("/tab/clubs/" +id) ;
   console.log("B: " +id) ;
}
ng click正在启动并进入控制器功能,console.log A和B都在显示,但仍然会出现相同的错误。然后,我在下一个控制器中添加test console.log代码,测试控制台日志消息永远不会触发——因此它甚至不会进入控制器

我还能怎么追踪这个

错误的

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)"
有关详细信息,请参阅

使现代化 通过创建控制器方法并从视图中调用该方法来简化模板:

 ng-click="onClick(event)"

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

您是否在ng click中使用了双花括号{{}?@georgeawg-事实上,我是。我也想到了这一点,所以我查看了我以前版本的应用程序,它们的编码方式是相同的,工作没有问题。模板代码是:ng click=$location.url'/tab/clubs/L{{event.cID}}}{{event.clID}}}{event.ceID}}',渲染后显示如上所示的'tab/clubs/L{event.cID}}}'。我没有在上一个应用版本和当前应用版本之间更新Ionic或AngularJS。我仍然对这一版本感到困惑,无法找出如何跟踪此问题。我更改为此…它的渲染方式与上面的相同,但单击按钮后,我仍然会收到相同的错误。是否有某种跟踪方法可用于跟踪错误的确切来源/位置,或者有其他方法跟踪此匿名ueoe错误?
 ng-click="onClick(event)"
 $scope.onClick = function(event) {
     var url = '/tab/clubs/L_'+ event.cID +'_'+ event.clID +'_'+ event.ceID;
     $location.url(url);
 };