Я бы сказал, что это зависит от ваших сценариев, если ваш сценарий связан с вашим контроллером, вы можете включить его в метод _init()
вашего контроллера.
Я обычно предпочитаю включать мои .jsскрипты внутри моего представления (когда они касаются только одного уникального представления), используя $this->jQuery()->addOnload()
для jQuery и:
<?php $this->headScript()->appendFile('/js/user-list.js') ?>
<?php $this->headScript()->captureStart() ?>
site = {
baseUrl: "<?php echo $this->baseUrl() ?>"
};
<?php $this->headScript()->captureEnd() ?>
для js-скриптов.Как вы можете видеть во втором примере, реальным преимуществом использования captureStart () является то, что вы можете использовать PHP для генерации содержимого в вашем Javascript .Это может быть очень полезно, например, для перевода слова.
Наконец, метод _initView()
в вашей начальной загрузке является хорошим местом для размещения веб-сайта относительно .js.