当我传递一个ID时,函数参数接收一个空字符串

Function parameter receiving an empty string when I pass an ID

本文关键字:一个 参数 字符串 函数 ID      更新时间:2023-09-26

我的ng-click有一个奇怪的行为。

当我点击"完成"按钮时,我调用我的someAction函数传递一个ID。

当我在Chrome中检查元素时,它显示我someAction(134)应该是。

但是在我的someAction函数中,actionId参数它总是一个空字符串我还不知道它是什么

有人能帮我解决这个问题吗?

JS

function DetalheAcaoCtrl($scope, $http, $stateParams, $ionicPopup, $timeout) {        
    $scope.someAction = function (actionId) {
        $scope.showPopup(actionId);
    }
}

<ion-footer-bar class="bar-stable">
  <div class="row row-footer row-center">
    <div class="col col-footer text-right">
        <button class="button button-positive" ng-click="someAction({{item.Id}})">Done</button>
    </div>
  </div>
</ion-footer-bar>
Chrome

<ion-footer-bar class="bar-stable">
  <div class="row row-footer row-center">
    <div class="col col-footer text-right">
        <button class="button button-positive" ng-click="someAction(134)">Done</button>
    </div>
  </div>
</ion-footer-bar>

在angular(本例中为ng click)中工作时,不需要使用大括号。

<button class="button button-positive" ng-click="someAction(item.Id)">Done</button>

它在chrome中正确渲染的原因是因为它只准备好dom,但angular不会连接你需要的数字。它试图传递变量134,而不是值。因此,变量134在该范围内是未定义的。