是什么导致rebol错误放置项目错误?

joh*_*ork 5 user-interface rebol rebol2

以下是将代码修剪至最小值以显示错误:

Rebol []

view center-face layout [
    fld1: field
    fld2: field
    flds: [fld1 fld2]
]
Run Code Online (Sandbox Code Playgroud)

Gra*_*hiu 3

这是显示错误的最短示例:

layout [ test: []] 
>>Misplaced item: []
Run Code Online (Sandbox Code Playgroud)

Rebol 使用多种不同的方言,本示例中使用的两种方言是do 方言view 方言。现在在“布局”函数中,您只能使用视图方言,但您已经混合了两者。因此, 'layout 函数使用的解析器抱怨item 错位。该方言期望在 flds 之后看到诸如字段、区域、标签等的面之一,但是却找到了一个块。

关于您的澄清评论,如果您希望创建一个字段块,您可以先创建该块,然后将其提供给像这样的“布局函数”,这样您最终就会得到名为 var1 到 var9 的字段。

lo: [ across ]

for i 1 9 1 [
    repend lo [ 'label  form join "var" i to set-word! join "var" i 'field 'return ]   
]

view layout lo
Run Code Online (Sandbox Code Playgroud)