Sapui5 UploadCollection instantUpload=";假;当嵌入到列表中时

Sapui5 UploadCollection instantUpload=";假;当嵌入到列表中时,sapui5,Sapui5,我正在使用sap.m.UploadCollection管理用户选择的文件并上传到服务器。我希望用户选择所有需要的文件,然后按“保存”按钮一次上载所有文件。因此,我将instantUpload设置为false。此UploadCollection是sap.m.List中项目的一部分。当用户从文件系统中选择文件时,将自动执行上载(不需要)。如果在列表之外使用相同的UploadCollection定义,则不会立即上载。我需要让它在列表中正常工作 代码段: <List items="{ pa

我正在使用
sap.m.UploadCollection
管理用户选择的文件并上传到服务器。我希望用户选择所有需要的文件,然后按“保存”按钮一次上载所有文件。因此,我将
instantUpload
设置为
false
。此
UploadCollection
sap.m.List
中项目的一部分。当用户从文件系统中选择文件时,将自动执行上载(不需要)。如果在
列表之外使用相同的
UploadCollection
定义,则不会立即上载。我需要让它在列表中正常工作

代码段:

<List
    items="{ path: 'submittal>/submission', templateShareable: true }">
    <layoutData>
        <layout:GridData span="XL12 L12 M12 S12"/>
    </layoutData>
    <items>
        <CustomListItem>
            <Panel headerText="Round # {submittal>roundId}" expandable="true" expanded="true">
                <forms:SimpleForm layout="ResponsiveGridLayout" editable="true">
                    <UploadCollection
                        noDataText="No documents on file"
                        items="{path : 'submittal>documents', templateShareable : false}"
                        mode="SingleSelectMaster"
                        uploadEnabled="true"
                        uploadButtonInvisible="false"           
                        uploadUrl="OptionController?optionId=JS002&#38;action=submittalUpload"
                        instantUpload="false"
                        multiple="true"
                        beforeUploadStarts="submittalBeforeUpload"
                        uploadComplete="submittalUploadComplete"
                        selectionChange="documentSelected">
                        <layoutData>
                            <layout:GridData span="XL6 L8 M10 S12" linebreakXL="true" linebreakL="true" linebreakM="true" linebreakS="true" />
                        </layoutData>
                        <items>
                            <UploadCollectionItem
                                documentId="{submittal>id}"
                                fileName="{submittal>name}"
                                mimeType="{submittal>typeName}"
                                selected="{submittal>selected}"
                                visibleEdit="false"
                                enableDelete="true"
                                deletePress="documentDelete">
                                <attributes>
                                    <ObjectAttribute title="File size" text="{ path: 'submittal>size', formatter: '.formatFileSize' }" />
                                </attributes>
                            </UploadCollectionItem>
                        </items>
                    </UploadCollection>
                 </forms:SimpleForm>
            </Panel>
        </CustomListItem>
    </items>
</List>

UI5版本:1.78.1

任何帮助都将不胜感激


谢谢

不建议直接在列表、表等中使用UploadCollection,但有一个简单的解决方法

只需将sap.m.按钮放入sap.m.列表,而不是直接使用sap.m.UploadCollection。然后使用包含sap.m.UploadCollection的sap.m.Dialog定义片段。在按钮按下事件回调中,您只需将行上下文绑定到对话框中,就可以显示正确的上载文件(如果有)

您还可以在列表中设计一个按钮,使用附件图标作为图标属性,使用文本属性中的数字(计数器)指示已上载的文件数量


最终用户在一个或多个列表项中看到列表项,然后看到UploadCollection中的其他项(文件),这会让人感到困惑。

不建议直接在列表、表等中使用UploadCollection。但有一个简单的解决方法

只需将sap.m.按钮放入sap.m.列表,而不是直接使用sap.m.UploadCollection。然后使用包含sap.m.UploadCollection的sap.m.Dialog定义片段。在按钮按下事件回调中,您只需将行上下文绑定到对话框中,就可以显示正确的上载文件(如果有)

您还可以在列表中设计一个按钮,使用附件图标作为图标属性,使用文本属性中的数字(计数器)指示已上载的文件数量


最终用户在一个或多个列表项中看到列表项,然后看到UploadCollection中的其他项(文件),这会让人感到困惑。

Hmmm。这是一个有趣的想法。我可以试一下,因为它看起来也更干净。谢谢你,嗯。好主意。我可以试一下,因为它看起来也更干净。非常感谢。