你能在上传时使用vaadin按钮吗?

你能在上传时使用vaadin按钮吗?,vaadin,vaadin-flow,vaadin14,vaadin-designer,Vaadin,Vaadin Flow,Vaadin14,Vaadin Designer,所有上载示例都显示在以编程方式创建上载时使用NativeButton。我想使用一个按钮(vaadin按钮),它是设计器布局的一部分。尝试此操作时,我看到以下错误: Caused by: java.lang.IllegalArgumentException: Trying to detach an element from parent that does not have it. at com.vaadin.flow.dom.impl.AbstractNodeStateProvider.

所有上载示例都显示在以编程方式创建上载时使用NativeButton。我想使用一个按钮(vaadin按钮),它是设计器布局的一部分。尝试此操作时,我看到以下错误:

Caused by: java.lang.IllegalArgumentException: Trying to detach an element from parent that does not have it.
    at com.vaadin.flow.dom.impl.AbstractNodeStateProvider.removeChild(AbstractNodeStateProvider.java:123)
    at com.vaadin.flow.dom.Node.removeChild(Node.java:376)
    at com.vaadin.flow.dom.Element.removeFromParent(Element.java:577)
    at com.vaadin.flow.dom.Node.insertChild(Node.java:293)
    at com.vaadin.flow.dom.Node.appendChild(Node.java:141)
    at com.vaadin.flow.component.upload.GeneratedVaadinUpload.addToAddButton(GeneratedVaadinUpload.java:1344)
    at com.vaadin.flow.component.upload.Upload.setUploadButton(Upload.java:276)

我们正在CDI模式下使用Vaadin 14。

要使用Designer更改上载按钮,您需要将按钮拖动到层次结构中的上载中,然后添加slot=“add button”属性

您的模板最终应如下所示:

<vaadin-upload>
 <vaadin-button slot="add-button">
   Button 
 </vaadin-button>
</vaadin-upload>

按钮
请注意,必须在“层次”面板中执行此操作。


如果这没有帮助(可能您已经这样做了),您是否可以包含一些代码来显示您正在尝试执行的操作?

我刚刚在Designer存储库中为这一改进创建了一个问题


请随意评论。

您能提供多一点上下文(代码)吗?作为一个合理性检查,我在14.6.1中尝试了这个示例,在这个有限的示例中,只需将
NativeButton
切换到
Button
就可以了。我可能不太了解您的情况。如果我以编程方式创建vaadin按钮,它会工作,但如果按钮是由设计器在.js文件中创建的,则不会工作。谢谢。如果这是有文档记录的,并且不必花费数小时来调试它,那就好了。