簡體   English   中英

如何在coffeescript上測試ruby / rails變量?

[英]how can I test a ruby/rails variable on coffeescript?

如何在coffeescript中測試ruby變量? 我正在更新Rails遺留應用程序,並嘗試保持第一步中可以關閉的原始格式。 使用.js.erb ,我可以簡單地執行<%= if @var %> .js.erb <%= if @var %>來實現所需的功能。

貝婁是視圖的代碼,有兩次錯誤的嘗試:

if @review_change_needs_refresh # Don't work
# if "#{@review_change_needs_refresh}" == "true" Don't work too
  location.reload()
else
  button_div_id = "#ManagedWorkFor#{@work.class.to_s}#{@work.id}"
  label_div_id = "#chat_#{@managed_work.to_language_id}_label"

  $(button_div_id,"#{escape_javascript(render(:partial => "/managed_works/managed_work", :object=>@work))}")

  if @checkbox_label.any?
    for element in $("##{label_div_id}") then do => $("##{label_div_id}", "#{@checkbox_label}")

在操作上,正在測試的變量是布爾值:

@review_change_needs_refresh = params[:review_change_needs_refresh] == 1

我在coffeescript文件的第一行收到以下錯誤:

ActionView::Template::Error (SyntaxError: unexpected {):

那么,如何測試Coffeescript中的紅寶石變量?

如果您確實要在CoffeeScript文件中使用Ruby代碼,只需將其重命名為*.js.coffee.erb 然后,您可以將<%= %>標記放入文件中。

就像MyYoshiji所鏈接的問題一樣,Rails團隊出於性能原因決定不支持您嘗試做的事情。

我個人將使用我的Ruby數據在視圖文件中設置一些JS變量,然后將這些變量加載到CoffeeScript文件中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM