После еще нескольких попыток я решил пойти и использовать систему событий.Я сделал это следующим образом:
<?php
namespace App\Event;
use Cake\Event\EventListenerInterface;
class ApplicationListener implements EventListenerInterface {
public function implementedEvents() {
return [
'View.beforeLayout' => 'injectJsFile'
];
}
public function injectJsFile(Event $event, $layoutFile){
$event->getSubject()->Html->script('myscript', ['block' => 'script']);
}
}
Это делает работу за меня, но если есть способ контроллера или лучший способ системы событий, я хотел бы услышать это.