У меня была идея для угловой директивы, но я не уверен, что это возможно.угловой доступ ng-repeat массив из дочерней директивы
мне часто приходится удалять и элемент из нг повтора массива, так что де-факто решение иметь функцию на объем:
$scope.remove = function(item) {
var index = $scope.items.indexOf(item);
$scope.items.splice(index, 1);
}
Я постоянно пишу этот котел код пластины для каждого нг-повтор, и было бы неплохо иметь возможность сделать что-то вроде этого, вместо:
<li ng-repeat="item in items">
<button ng-click-remove="item"></button>
</li>
в основном я имею в виду директиву просто завернуть нг-клик, но потом я начинаю думать, это даже можно получить доступ к массиву элементов из моей директивы, не зная его имени или используя $ parent?
код, который вы публикуете, основывается на знании имени массива «элементы». Как я уже упоминал, это неприемлемо, и ни одна из них не является сервисом для ввода в контроллер (который побеждает цель удаления такого кода с контроллера). Я ищу возможный эзотерический или угловой внутренний метод для доступа к «текущему итерационному массиву ng-repeat». Если такой метод не существует, то ответа на этот вопрос нет. – parliament
Вы можете использовать тот факт, что у вас есть attrs.ngClickRemove, который даст вам значение элемента, и у вас есть доступ к области, поэтому, возможно, вы можете что-то там сделать. –