You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Inertia useForm.js提交时onProgress执行但console.log无输出求解答

Inertia.post onProgress回调console.log无输出的排查方案

1. 先检查浏览器控制台过滤设置

浏览器控制台默认可能过滤普通log,别白忙活:

  • 打开开发者工具的Console面板,把过滤选项切到All,别只盯着Errors或Warnings
  • 实在不行换console.warn("onProgress")或者console.debug()试试,这类输出不容易被过滤

2. 排查回调内的代码阻塞问题

你代码里onProgress回调中调用了openGeneratingFileDialog(),说不定是这个方法出错导致log被吞:

  • 先把openGeneratingFileDialog()注释掉,只保留console.log("onProgress"),看log能不能正常输出
  • 如果注释后log能显示,就去排查openGeneratingFileDialog()的代码,比如是不是DOM元素找不到、变量未定义之类的报错,修复这个方法的问题即可

3. 确认Inertia版本与响应类型

  • 老版本Inertia对onProgress的支持可能有缺陷,试试升级到最新稳定版
  • onProgress仅在服务器返回流式响应时持续触发,如果服务器是一次性返回结果,onProgress只会执行一次,要是后续代码报错,log就会被掩盖

4. 顺便修正代码里的拼写错误

你onError回调里写的是opneFailDialog(),多打了一个字母n,应该是openFailDialog()——这个虽然不影响onProgress的log,但会导致错误回调无法正常执行,顺手改了吧

调试用简化代码

先跑这个简化版确认log是否正常:

Inertia.post('/generateFile', form, {
    onProgress: () => {
        console.log("onProgress触发");
        // openGeneratingFileDialog(); 先注释掉
    },
    onSuccess: () => {
        console.log("onSuccess触发");  
        openSuccessDialog();                   
    },
    onError: () => {
        console.log("onError触发");       
        openFailDialog(); // 修正拼写错误
    },
})

内容的提问来源于stack exchange,提问作者Manson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 01:41:26