Есть ли способ включить внешний Javascript в качестве источника для Jasmine? - PullRequest
6 голосов
/ 07 октября 2011

Я пытаюсь настроить jasmine.yml (используя jasmine gem) для использования JQuery, подаваемого из Google API, вместо локальной загрузки на мой сервер. I.e.:

src_files:
  - ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js

К сожалению, это, похоже, не работает, так как (согласно комментариям в файле конфигурации) он ищет пути к файлам относительно src_dir. Разве это не возможно тогда?

Спасибо

Руй

Ответы [ 3 ]

3 голосов
/ 12 января 2012

В итоге я написал Javascript для включения через spec Helper - в моем случае сценарий Livereload:

document.write('<script src="http://' + (location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1"></' + 'script>');

Это немного глупо, но работает. Возможно, вы захотите более точно определить, куда вставляется скрипт.

1 голос
/ 29 сентября 2014

Вы можете использовать jQuery getScript :

$.getScript( external_script_url, function( data, textStatus, jqxhr ) {
  some code to execute after script is loaded
});

Если вы также хотите включить jQuery извне, вы должны загрузить его таким образом

document.write('<script src="http://.../jquery.min.js</script>')
1 голос
/ 19 июня 2014

Если вы используете гем jasmine-rails, вы можете создать свой собственный layouts/jasmine_rails/spec_runner.html и добавить туда удаленную зависимость.

!!! 5
%html
  %head
    %title Jasmine Specs
    = stylesheet_link_tag *jasmine_css_files
    %script(src='//maps.googleapis.com/maps/api/js?sensor=false')
    = javascript_include_tag *jasmine_js_files
  %body
    #jasmine_content
    = yield
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...