开发者

Is there a way to include external Javascript as a source to Jasmine?

开发者 https://www.devze.com 2023-04-11 13:16 出处:网络
I am trying to configure jasmine.yml (using jasm开发者_StackOverflowine gem) to use JQuery served from Google API instead of downloading it locally to my server. I.e.:

I am trying to configure jasmine.yml (using jasm开发者_StackOverflowine gem) to use JQuery served from Google API instead of downloading it locally to my server. I.e.:

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

Unfortunately this does not seem to work, since (as per the comments in the config file) it is looking for filepaths relative to src_dir. Is this not possible then?

Thanks

Ruy


I ended up writing the javascript include via spec helper - in my case the Livereload script:

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

It’s a bit hacky but works. You might want to define more accurately where the script is being inserted.


If you are using the jasmine-rails gem you can create your own layouts/jasmine_rails/spec_runner.html, and add the remote dependency there.

!!! 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


You can use jQuery getScript:

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

In case you also want to include jQuery externally, you have to load it this way

document.write('<script src="http://.../jquery.min.js</script>')
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号