Внешние файлы JS в Yii - PullRequest
       2

Внешние файлы JS в Yii

0 голосов
/ 24 августа 2011

Я пытаюсь вызвать внешний файл JS из моей папки ресурсов Yii, и исходный код показывает правильный файл, но JS не отвечает.

Я включил это в свой файл просмотра ...

<?php Yii::app()->clientScript->registerScriptFile( Yii::app()->request->baseurl . '/assets/test.js' ); ?>

И я знаю, что это проблема б / к, когда я копировал его в не-Yii папка это работало, и когда я нашел онлайн файл JS в Yii , он работал.

Ответы [ 2 ]

1 голос
/ 29 января 2012

CClientScript :: registerScriptFile () может поместить тег в различные части HTML вашей страницы (в трех точках: в или в начале или в конце ).Иногда позиция имеет значение, потому что порядок тегов скрипта имеет значение.Я обнаружил, что порядок имеет значение, когда я использовал jQuery UI.

По умолчанию он помещает тег сценария в .Если вы играете с позицией, вы можете обнаружить, что она работает.

Небольшой фрагмент кода, который вы показываете, не указывает на какие-либо проблемы.Но вы можете привести пример побольше и / или показать, что вы сделали, что сработало.Кстати, в Yii не следует помещать вещи прямо в папку активов.Элементы попадают сюда, будучи опубликованными через менеджера активов.

1 голос
/ 24 августа 2011

Папка ресурсов должна использоваться только для публикации там файлов диспетчером ресурсов .Например, если файл JS является частью виджета, вы можете поместить его в защищенный / components / widgets / assets / yourJsFile.js и использовать диспетчер ресурсов для его автоматической публикации в папке / assets.Подробнее здесь: Понимание активов .Возможно, вы захотите поместить свой файл в /js/test.js и работать с ним напрямую, если не используете менеджер ресурсов.

Я до сих пор не знаю, является ли это проблемой, если файл загружается,Если это не помогает, пожалуйста, покажите еще немного кода - где и как вы загружаете этот файл js в представления, что находится в файле и т. Д.

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