Угловой вызов функции внутри Ng repeat - PullRequest
0 голосов
/ 05 июля 2018

https://prnt.sc/k2z0w9

Эй. у меня есть таблица повторений (воскресенье - стол)

и у меня есть функция, которая принимает идентификатор работника и возвращает имя работника, которое называется GetWorkerName Как я могу вызвать функцию в ng repeat, не щелкая по функции? Пожалуйста, помогите мне:)

        $scope.GetWorkerName=function(workerid){
        $http.get("/ShiftWeb/rest/worker/getworkername?id="+workerid)
            .then(function(response){
                $scope.getWorkerName=response.data;
            })
        };

HTML:

-

<table class="table table-bordered table-striped">
<tr>
    <th>Sunday</th>
</tr>
<tr ng-repeat="settingtime in settingtimes | orderBy:'time' | 
filter:by_shiftDay" ng-if="settingtime.shiftDay=='SUNDAY'">
    <td>
    {{settingtime.time}}
    </br>
    <div style="border: 1px solid red" ng-repeat="sidor in nextsidor" ng- 
 if="sidor.shiftTime==settingtime.id">
    Worker: {{sidor.worker}}
    {{getWorkerName}}
    </br>
    Role : {{sidor.role}}

    </br><button class="btn btn-primary" ui-sref="sidor" ng- 
click="RemoveShift(sidor.id)">Remove Shift</button>
    </div>
    </br><button class="btn btn-primary" ui-sref="sidor" ng- 
click="CreateShift(settingtime.id)">Create Shift</button>
</tr>
</table>

1 Ответ

0 голосов
/ 06 июля 2018

Что вы, вероятно, хотите сделать, это создать директиву, которая может взять идентификатор и вернуть любые данные, которые вы хотите. Тогда вы можете использовать это в других местах.

Использование директивы:

<worker id="231"></worker>

Определение директивы:

(function(){

    angular.module('example').directive('worker', ['workerService', function(workerService){

        function link($scope, element, attrs) {
            $scope.workerName = workerService.getName(attrs.id);
        };

        return {
            template: '(<span>{{ workerName }}</span>)',
            link: link
        };

    }]);

})();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...