繁体   English   中英

新的Ruby语法并非每次都有效

[英]New Ruby syntax doesn't work everytime

我想请Ruby专家进行解释。

我不能使用"foo-bar": true ,但是foobar: true可以的。 有人注意到吗?

这有效:

在新的Ruby语法中,我们可以替换此哈希火箭:

<%= f.submit "Save", :class => "btn" %>
                     ^-------------^

有了这个

<%= f.submit "Save", class: "btn" %>
                     ^----------^

这不是:

现在,两个单词的符号怎么样? 这不起作用-语法错误!

<%= f.submit "Save", "data-disable-with": "Saving..." %>
                     ^------------------------------^

JSON样式Hash语法适用于Hash其键是Symbol ,它们是有效的Ruby标识符。 你的关键既不是一个Symbol (这是一个String ),也不是有效的Ruby标识符(Ruby的标识符不能包含一个连字符,因为它创建与二进制中缀的模糊性-运营商:不ab意味着标识符ab还是意味着“减去ba ,即a.-(b) ?)

您试图将密钥设置为字符串而不是符号。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM