Filepond结合ASP.NET:server配置中的load函数始终不触发
问题分析与解决:FilePond加载已上传文件时load函数不触发的问题
问题核心
- 上传新文件时,
server.process函数执行正常 - 通过
addFiles方法或files属性加载已上传文件时,server.load函数始终不触发,反而会调用server.process函数
原因解释
FilePond会根据添加文件时指定的type属性来决定执行哪个服务器端函数:
- 当设置
type: "local"时,FilePond会将其视为待上传的本地文件,因此会触发process函数执行上传流程 load函数仅在文件类型为"remote"或"limbo"时触发,用于从指定的source地址加载已存储在服务器上的文件资源
另外你的代码中存在拼写错误:文件配置项里的option应该是复数options,这也会导致类型配置不生效,进而触发错误的处理流程。
修复方案
修改文件数组的配置,将type改为"remote",同时修正option的拼写错误:
var lfiles = [ { source: "https://localhost:44308/Samples/Filepond/Uploads/CPT001.png", options: { type: "remote", }, }, { source: "https://localhost:44308/Samples/Filepond/Uploads/CPT009.png", options: { type: "remote", }, }, { source: "https://localhost:44308/Samples/Filepond/Uploads/CPT010.png", options: { type: "remote", }, }, ];
服务器端函数工作机制说明
process函数:负责处理本地文件的上传流程,当用户选择、拖拽、粘贴文件,或添加标记为"local"的文件时触发,需要实现文件到服务器的上传逻辑,并返回服务器端的文件标识。load函数:负责加载服务器上已存在的文件,当添加标记为"remote"或"limbo"的文件时触发,需要从指定source获取文件Blob并传递给load回调完成展示。revert函数:当用户将已上传文件恢复为待上传状态时触发,通常用于通知服务器删除临时存储的文件。remove函数:当用户删除已上传的文件时触发,用于通知服务器删除永久存储的文件资源。
内容的提问来源于stack exchange,提问作者eDevx
相关产品推荐
相关产品推荐

