代码之家  ›  专栏  ›  技术社区  ›  Trinity76

Rails:当尝试在javascript中使用ruby数组时,使用“null”代替包含3个元素的数组

  •  0
  • Trinity76  · 技术社区  · 7 年前

    我有以下代码片段:

    在我的app/assets/javascripts中/应用程序.js

    //= require jquery
    //= require harddisk
    //= require rails-ujs
    //= require_tree .
    

    在我的app/assets/javascripts中/硬盘.js.erb

      var harddisk_locations = [<%= raw @harddisk_locations.to_json %>];
      console.log(harddisk_locations);
    

    在我的应用程序/模型中/硬盘.rb

    @harddisk_locations = ["foo", "bar", "baz"];
    

    但由于某些原因,在浏览器控制台的硬盘页面上

    为什么会这样?如何修复?

    @硬盘位置=[“foo”,“bar”,“baz”];

    从硬盘模型到硬盘_控制器.rb

    1 回复  |  直到 7 年前
        1
  •  1
  •   Ravi Teja Dandu    7 年前

    HD_LOCATIONS = ['foo', 'bar', 'baz']
    

    在JS文件中:

    var harddisk_locations = [<%= raw Harddisk::HD_LOCATIONS.to_json %>];
    

    您可以在此处阅读有关变量类型的更多信息: https://www.tutorialspoint.com/ruby/ruby_variables.htm