使用ngclick AngularJS将参数传递给服务

时间:2017-11-14 18:12:24

标签: angularjs

嘿,我有一系列数字,我正在使用ng-repeat编写它们。当你点击某个数字时应该传递给函数 passParameterToService 参数索引,并且应该保存在变量this.whichBoard中。但我做错了什么,有人可以告诉我为什么ng-repeat在我添加服务时不起作用,为什么在点击某个数字之后,它不会写入变量?

demo

Android profiler

1 个答案:

答案 0 :(得分:0)

在你的服务中,你正在声明这个。但是在函数内部,你再次使用相同的命名变量。如果你在里面设置this.board,它可能会起作用:

app.service('serwis', ()=> {
  this.whichBoard = (index) => {
    this.board = index;
  };
});

同样在调用方法中,您有:

<a href="#" ng-click="passParameterToService($index)">
  <span ng-repeat="item in arrayIndex">{{item}}</span>
</a>

您正在传递$ index,这不是一个值。此外,您在方法调用中有重复,因此将其更改为:

<div ng-repeat="item in arrayIndex track by $index">
  <a href="#" ng-click="passParameterToService(item)">{{item}}</a>
</div>