Application.js.coffee rails

我试图从jQuery做一个自动完成,但是我的代码是在CoffeeScript中。 我不确定如何在我的localhost服务器上运行它。

起初我将它放在application.js中,但这不起作用,所以我创建了gens.js.coffee并将代码放在那里,但仍然没有显示。

这是代码:

jQuery -> $('#querysearch').autocomplete source: ['foo', 'food', 'four'] 

这里application.js正在调用文件:

 //= require gens //= require jQuery.ui.datepicker # file his actually gens.js.coffee 

这就是我调用application.js的方式:

  

我做错了什么?

首先,我要确保我的Gemfile中有CoffeeScript和jQuery UI gem。

 group :assets do gem 'coffee-rails' gem 'jquery-ui-rails' end 

然后我会确保我正确地要求这些资产。 我想你在这里犯错了

  1. 通过在jquery中大写Q
  2. 通过要求datepicker然后尝试调用自动完成
  3. 通过在’gens’文件之后要求您的jQuery UI库。

它看起来应该是这样的

 //= require jquery.ui.autocomplete //= require gens 

如果你愿意,你可以将JS代码(不是CoffeeScript)直接放入application.js文件中,或者你的gens.js.coffee文件中应该gens.js.coffee

您还可以尝试运行服务器并访问http://localhost:3000/assets/application.js 。 您可以在那里查看JS,看看它是否正确。

我还会尝试在Chrome浏览器中打开Dev工具并查找JavaScript错误。