我vaadin-combo-box
在我的 Fusion v21 应用程序中有一个尝试填充包含名称和值的对象。所以,我想name
在组合框的下拉列表中显示该属性,当我选择一个值时,它应该将它放在value
我的实体中,该实体由Binder
.
private binder = new Binder<SamplePerson, SamplePersonModel>(this, SamplePersonModel);
...
<vaadin-combo-box
.items="${[{name:'Name1', value:'Value1'},{name:'Name2', value:'Value2'}]}"
@value-changed="${(e: CustomEvent) => console.log(e.detail.value)}"
item-label-path="name"
item-value-path="value"
...="${field(this.binder.model.lastName)}">
</vaadin-combo-box>
我的实体:
@Data
public class SamplePerson {
@Id
@GeneratedValue
@Nonnull
private Integer id;
@NotNull
private String lastName;
}
当我更改值时,我可以在控制台日志中看到它正在显示正确的值。但是当我在方法中检查我的实体时submitTo
,我得到以下信息:
// expected: lastName: 'Value1'
// but got:
lastName: {name: 'Name1', value: 'Value1'}
我在这里做错了吗?
(我使用 Person 表单模板从 Vaadin 重构了一个启动应用程序。)