function JsExampleController::getJsAccordionImplementation
Accordion page implementation.
We're allowing a twig template to define our content in this case, which isn't normally how things work, but it's easier to demonstrate the JavaScript this way.
Return value
array A renderable array.
1 string reference to 'JsExampleController::getJsAccordionImplementation'
- js_example.routing.yml in modules/
js_example/ js_example.routing.yml  - modules/js_example/js_example.routing.yml
 
File
- 
              modules/
js_example/ src/ Controller/ JsExampleController.php, line 98  
Class
- JsExampleController
 - Controller for Hooks example description page.
 
Namespace
Drupal\js_example\ControllerCode
public function getJsAccordionImplementation() {
  $title = $this->t('Click sections to expand or collapse:');
  // Build using our theme. This gives us content, which is not a good
  // practice, but which allows us to demonstrate adding JavaScript here.
  $build['myelement'] = [
    '#theme' => 'js_example_accordion',
    '#title' => $title,
  ];
  // Add our script. It is tiny, but this demonstrates how to add it. We pass
  // our module name followed by the internal library name declared in
  // libraries yml file.
  $build['myelement']['#attached']['library'][] = 'js_example/js_example.accordion';
  // Return the renderable array.
  return $build;
}