use javascript in rails 3.2 without coffeescript

2019-05-01 21:09发布

I'm using Rails 3.2, It's set up for coffeescript. I know Coffeescript is an awesome language and it's not too hard to learn, but i'm JUST starting to wrap my head around Javascript and jQuery. So my question is this: Is there an easy way to set rails 3.2 up to use Javascript instead? At the moment, my jQuery is in <script></script> tags in my view (timeline/index.html.erb). I'd like to move it into a .js file. I tried changing the name of my timeline.js.coffee to just timeline.js and putting the jQuery in there, but I get Uncaught SyntaxError: Unexpected token ILLEGAL.

What should I do besides the obvious answer of "learn coffeescript"?

4条回答
做自己的国王
2楼-- · 2019-05-01 21:24

you can simply comment out gem 'coffee-rails' in your Gemfile

查看更多
等我变得足够好
3楼-- · 2019-05-01 21:35
$ rails -v
Rails 3.2.11

how about this?
http://bit.ly/VHEnBX

git clone it
cd js_test
bundle
rails s -d
open http://localhost:3000

# stop the detached server 
kill -9 `cat tmp/pids/server.pid`

you should see here alert from the browser.

it's just a simple js file. no .coffee extension or whatsoever. http://bit.ly/UPe2mp

查看更多
Anthone
4楼-- · 2019-05-01 21:36

I was on the right track. To switch to javascript in rails 3.2 you only need to remove the .coffee extension. However, you also need to make sure you use // for comments instead of #

//# Place all the behaviors and hooks related to the matching controller here.
//# All this logic will automatically be available in application.js.
//# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
查看更多
5楼-- · 2019-05-01 21:38

Manifest Files and Directives
http://guides.rubyonrails.org/asset_pipeline.html#manifest-files-and-directives

add js files in app/assets/javascripts, then add the files in application.js


your js file

alert("here");

application.js

//= require_tree .
or
//= require your_js_file_name

then, it will be picked up from the code below in your app/views/layouts/application.html.erb

<%= javascript_include_tag "application" %>
查看更多
登录 后发表回答