0

抱歉,如果这是一个愚蠢的问题,但我想知道如何在 Arbre 块中定义一个类。我试图简单地将逗号放在块之后,但 Ruby 指责它有错误(特别是:“意外的令牌 tCOMMA(使用 Ruby 2.3 解析器;使用TargetRubyVersion参数配置,在 下AllCops)(错误:Lint/Syntax)”)。

这就是我尝试这样做的方式:

div {
    h4 "Title", class: "title"
    span "Info", class: "info"
}, class: "my_div"

这会导致上述错误。但我真的不知道有什么其他方法可以解决这个问题。任何帮助将非常感激!

4

1 回答 1

1

Arbre 定义是 ruby​​ 方法,具有您必须遵循的基本语法。首先是位置参数,然后是关键字参数,最后是块。在您的示例中,您以相反的方式执行此操作,因此您传递了一个块,然后传递了一个关键字参数。要解决此问题,只需更改为:

div class: "my_div" {
    h4 "Title", class: "title"
    span "Info", class: "info"
}

这相当于:

div(class: "my_div") {
    h4("Title", class: "title")
    span("Info", class: "info")
}
于 2021-02-24T19:20:08.030 回答