JSFiddle - React, Tailwind, and code Playground

HTML

<body>
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous">
  <script src="https://code.jquery.com/jquery-3.1.1.slim.min.js" integrity="sha384-A7FZj7v+d/sdmMqp/nOQwliLvUsJfDHW+k9Omg/a/EheAdgtzNs3hpfag6Ed950n" crossorigin="anonymous"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js" integrity="sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn" crossorigin="anonymous"></script>


  <div class="card">
    <div class="card-header">
      <button id="expand-collapse" type="button" data-target=".block">
        exp/col
      </button>
    </div>

    <div class="card-block">
      <div id="collapse blocks">
        <div class="list-group">

          <div class="list-group-item">
            <div class="collapse block" id="block-1">
              FIRST BLOCK
            </div>
          </div>

          <div class="list-group-item">
            <div class="collapse block" id="block-2">
              SECOND BLOCK
            </div>
          </div>

          <div class="list-group-item">
            <div class="collapse block" id="block-3">
              THIRD BLOCK
            </div>
          </div>

        </div>
      </div>
    </div>
  </div>






</body>

JavaScript

$(function() {
  $('#expand-collapse').on('click', function() {
    var target = $(this).attr('data-target');
    $(target).each(function() {
      if ($(this).hasClass('show')) {
        $(this).collapse('hide');
      } else {
        $(this).collapse('show');
      }

    });
  });
});