CakePHP - Добавление файла JS в блок 'script' из обратного вызова beforeRender контроллера - PullRequest
0 голосов
/ 01 июня 2018

Можно ли добавить файл js для просмотра с контроллера beforeRender ()?Желательно ли это?Если нет, и если я не могу использовать View, я должен просто использовать систему событий?

По сути, идея состоит в том, чтобы создать созданный мной плагин, внедрить JS-файл в блок «script» плагина Theme (Отдельный плагин)

1 Ответ

0 голосов
/ 01 июня 2018

После еще нескольких попыток я решил пойти и использовать систему событий.Я сделал это следующим образом:

<?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']);
    }

}

Это делает работу за меня, но если есть способ контроллера или лучший способ системы событий, я хотел бы услышать это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...