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

正则表达式导致console.log输出为空的问题排查

问题根因

  • 后端返回的response.data是经过axios自动解析的数组对象,不存在字符串的replace方法,直接调用会抛出类型错误。你在Landing.js的catch块中没有打印错误,因此看不到报错信息,误以为没有输出。
  • replace方法语法错误:字符串的replace方法要求传入两个参数(匹配规则、替换内容),你仅传入了正则表达式,不符合语法要求,执行会直接报错。
  • 你的需求是提取date字段的数字,不需要直接操作整个响应体,应该先定位到date字段再做处理。

修复方案

1. 修复api.js逻辑

export async function manderleySurveyGet () {
    try {
        let response = await axios.get('http://localhost:6000/');
        // 取返回数组第一条数据的date字段,兼容空返回的情况
        const rawDate = response.data?.[0]?.date || '';
        // 用match匹配符合规则的日期字符串
        const dateMatch = rawDate.match(/\d{1,2} \d{2} \d{4}/);
        if (dateMatch) {
            // 示例:去掉空格仅保留数字,可按需调整处理逻辑
            return dateMatch[0].replaceAll(' ', '');
        }
        return '';
    } catch (err) {
        // 抛出错误供外层捕获处理
        throw new Error(err.message);
    }
}

2. 修复Landing.js的错误捕获逻辑

manderleySurveyGet()
.then(response => {
      console.log("SURVEY API RESULT LANDING:", response);
})
.catch(err => {
      // 打印错误信息便于排查问题
      console.error('请求报错:', err.message);
});

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 16:54:05