title: Magento 2 : Display Loader While Ajax call on Column row action?
body: <p>Grid xml column:</p>
  
  <pre><code>&lt;column name='actions' class='My\Test\Ui\Component\Listing\Columns\Feeds\AdvancedActions'&gt; 
      &lt;argument name='data' xsi:type='array'&gt; 
          &lt;item name='config' xsi:type='array'&gt;
              &lt;item name='component' xsi:type='string'&gt;My_Test/js/grid/columns/actions&lt;/item&gt; 
              &lt;item name='dataType' xsi:type='string'&gt;text&lt;/item&gt; 
              &lt;item name='label' xsi:type='string' translate='true'&gt;Actions&lt;/item&gt; 
              &lt;item name='sortOrder' xsi:type='number'&gt;90&lt;/item&gt; 
          &lt;/item&gt;
      &lt;/argument&gt;
  &lt;/column&gt;
  </code></pre>
  
  <p>Actions.js </p>
  
  <pre><code>define(
      [
      'jquery',
      'underscore',
      'mageUtils',
      'uiRegistry',
      'Magento_Ui/js/grid/columns/actions',
      'Magento_Ui/js/modal/confirm'
      ], function ($, _, utils, registry, Column, confirm) {
          'use strict';
      return Column.extend(
          {
  
              /**
               * Applies specified action.
               *
               * @param   {String} actionIndex - Actions' identifier.
               * @param   {Number} rowIndex - Index of a row.
               * @returns {ActionsColumn} Chainable.
               */
              applyAction: function (actionIndex, rowIndex) {
                  var action = this.getAction(rowIndex, actionIndex),
                  callback = this._getCallback(action);
  
                  if (action.confirm) {
                      this._confirm(action, callback);
                  } else if (action.popup) {
                      this._popup(action, callback);
                  } else {
                      callback();
                  }
  
                  return this;
              },
  
  
             _popup: function (action, callback) {
                  var popupData = action.popup;
                  var dataType = popupData.type;
  
                  //Start loader
                  var body = $('body').loader();
                  body.loader('show');
  
                  if (popupData.file !== undefined &amp;&amp; popupData.file !== '') {
                      $.ajax(
                          {
                              url: popupData.file,
                              async: false,
                              dataType: "text",
                              type: 'GET',
                              showLoader: true, //use for display loader
                              success: function (data) {
                                  popupData.message = data;
                              }
                          }
                      );
                  }
                  //Stop loader
                  body.loader('hide');
              },
  });
  </code></pre>
  
  <p>Used <code>showLoader: true</code> and <code>var body = $('body').loader(); body.loader('show');</code> but unable to start loader while ajax request.</p>
  
  <p>Need an  alternative to start loader during ajax call.</p>