语法错误:意外的标记“&”。预期的属性名称

时间:2018-08-24 13:31:04

标签: ruby-on-rails ruby-on-rails-4 slim-lang

我正在使用Slim。当我描述mysql -u root块时,我在JS代码中使用了它:

javascript:

但是我得到这个错误:

  

SyntaxError:意外的标记“&”。需要一个属性名称。

我尝试用javascript: var tteesstt = #{users.select(:id, :email).order(:email).to_json}; 换行,但这没有帮助。

请告诉我,如何解决该问题?

2 个答案:

答案 0 :(得分:1)

您的JSON字符串必须包含一些导致错误的特殊字符。您可以使用raw对其进行修复:

javascript:
  var tteesstt = #{raw users.select(:id, :email).order(:email).to_json};

根据定义:

  

此方法输出时不转义字符串。由于转义标签现在是默认设置,因此当您不希望Rails自动转义标签时可以使用它。

答案 1 :(得分:1)

Slim中,我们可以使用{{}}将JSON数据分配为JS对象。

javascript:
  var tteesstt = #{{users.select(:id, :email).order(:email).to_json}};
  console.log(tteesstt); // ensures it gets the data as expected.