The block_ajax module defines a behavior in its module:
https://git.drupalcode.org/project/block_ajax/-/blob/8.x-1.x/js/refresh_ajax_block_command.js
I want to initiate this call every 60 seconds so the contents of the block can refresh if there is new data from my own script file.
I tried two ways.
The first way I tried was setting up a route for a simple controller that returned an AjaxResponse:
public function execute() { $response = new AjaxResponse(); $response->addCommand(new RefreshBlockAjaxCommand('.my_block')); return $response; }
Hitting the route with Drupal.ajax
results in ‘context.querySelectorAll is not a function’, but it appears that the block is replaced (but missing the block wrapper around it, oddly enough, which probably won’t work calling it over and over).
The second way is I tried to call it from the browser console with Javascript, but I can’t figure out between this answer and the linked Javascript file at the top of the question what to call.
Trying to loop the element and attachBehaviors results in this: