Angular Js, Скрыть кнопку каждый раз, когда значение увеличивается - PullRequest
1 голос
/ 11 марта 2019

Как видно на скриншоте, кнопка увеличивается каждый раз, когда увеличивается индекс.

Что я хочу знать, так это то, что каждый раз при увеличении индекса у предыдущего номера больше не будет кнопки.

Например, на скриншоте 1 и 2 есть каждая кнопка, которая является кнопкой Вставить вопрос ниже. Кнопка должна появляться только на текущем наибольшем числе, на скриншоте кнопка должна появляться только на цифре 2.

1007 * Javascript *

  me.create_question_object = function (index) {
  }

HTML

<div class="col-md-12 yq-default-pad  top50 text-center">
   <div class="text-center">
      {$ $index + 1 $}.)
      <button  ng-hide ng-click="main.create_question_object($index)" class="btn btn-success">
         <i class="fas fa-plus-circle"></i> Insert Question Below</button>
   </div>
</div>

Вот скриншот: https://imgur.com/a/cyLhIN5

1 Ответ

1 голос
/ 11 марта 2019

Я полагаю, что у вас есть ng-repeat по вопросам, поэтому у вас есть какой-то массив, содержащий вопросы.

Если это так, вы можете показать кнопку на последнем вопросе с ng-if="$index === myArray.length-1".

$ index - это специальная переменная области действия, которая angular добавляет к области действия директивы ng-repeate.

angular.module('myModule', [])
  .controller('ctrl', function($scope) {
    $scope.questions = [1, 2, 3, 4];
  })


angular.bootstrap(document.getElementById('root'), ['myModule']);
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.5/angular.min.js"></script>
<div id="root">
  <ul ng-controller="ctrl">
    <li ng-repeat="item in questions">
      {{item}}
      <button ng-if="$index === questions.length-1">&times;</button>
    </li>
  </ul>
</div>
...