更新页面无法回显

需求与问题:

在菜品管理开发中,我需要修改菜品,第一步是回显页面,但在我再三确认代码无误的情况下依旧无法回显内容

问题发现与解决:

经过排查,我发现我的DishDTO内容如下:

java 复制代码
@Data
public class DishDTO extends Dish {
    private List<DishFlavor> dishFlavors=new ArrayList<>();

    private String categoryName;
}

传输内容如下:

前端接收如下:

javascript 复制代码
                this.dishFlavors = res.data.flavors&& res.data.flavors.map(obj => ({ ...obj, value: JSON.parse(obj.value),showOption: false }))

通过对比,我们可以发现是前端接收后端传递过来的数据的时候用的名字不对,res.data传递过来的数据只有dishFlavors而没有flavors,所以口味列表无法接收,导致整个页面无法回显

问题解决

将前端的flavors改为dishFlavors,保持和后端传递过来的数据名严格一致即可解决!

javascript 复制代码
                this.dishFlavors = res.data.dishFlavors && res.data.dishFlavors.map(obj => ({ ...obj, value: JSON.parse(obj.value),showOption: false }))

大家在开发中一定要记住前后端交互变量名保持一致呀,不然就会像我一样找好几个小时的bug

o(╥﹏╥)o

相关推荐
八哥程序员3 分钟前
你真的理解了 javascript 中的原型及原型链?
前端·javascript
冴羽10 分钟前
10 个 Nano Banana Pro 专业级生图技巧
前端·人工智能·aigc
花阴偷移14 分钟前
kotlin语法(上)
android·java·开发语言·kotlin
木易 士心19 分钟前
Go、Rust、Kotlin、Python 与 Java 从性能到生态,全面解读五大主流编程语言
java·golang·rust
7ayl20 分钟前
Vue3 - runtime-core的渲染器初始化流程
前端·vue.js
qq_3363139322 分钟前
java基础-set系列集合
java·开发语言·python
U***l83229 分钟前
【Spring】IDEA中创建Spring项目
java·spring·intellij-idea
好好沉淀30 分钟前
IDEA 报错:You aren‘t using a compiler supported by lombok (1分钟解决方案)
java·spring·intellij-idea
前端老宋Running35 分钟前
React 的“时光胶囊”:useRef 才是那个打破“闭包陷阱”的救世主
前端·react.js·设计模式
yinuo38 分钟前
前端跨页面通讯终极指南③:LocalStorage 用法全解析
前端