1、先获取门店下的所有菜品类型、菜品名称、菜品id(list),也就是最大数据量

this.$http.post(ceshiApi+'getCyFoodAndFoodTypeForShopId',{shopId:this.shopId},{emulateJSON:true,credentials: true}).then(function(res){
    if(res.data.type=='success'){
        this.foodList = res.data.data.cyFoodTypeList;
    }
});

2、获取该菜谱已经拥有(勾选了哪些)的菜品id(list)

this.$http.post(ceshiApi+'getCyMenuFoodByMenuId',{'cyMenuId': id},{emulateJSON:true,credentials: true}).then(function(res){
    if(res.data.type=='success'){
        let data = res.data.data;
        let list = [];
        for(let i = 0; i < data.length; i++) {
            list.push(data[i].foodDefineId);
        }
        this.foodListId = list;
    }else {
        alertErrors(res.data.message);
    }
});

3、在html页面使用vue对两数据进行对比,菜品id相同就打勾

<div class="modal-body">
    <div class="scroll_name ">
        <div class="newRecipe" style="overflow-y: scroll;height: 410px;">
            <div v-for="item in foodList" style="display: flex;flex-wrap: wrap;">
                <label style="margin-right: 20px;">{{ item.name }}</label>
                <div class="food-list">
                    <div v-for="food in item.cyFoodDefineList">
                        <label>
                            <input class="ace check_son" type="checkbox" :value="food.id" v-model="foodListId">
                            <span class="lbl">{{ food.name }}</span>
                        </label>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>

4、附上截图

vue.js编辑菜谱vue.js编辑菜谱

相关文章:

  • 2022-01-24
  • 2021-06-28
  • 2021-11-10
  • 2022-02-24
  • 2023-01-16
  • 2021-10-01
  • 2021-10-26
  • 2022-12-23
猜你喜欢
  • 2021-06-14
  • 2021-06-02
  • 2021-07-14
  • 2021-09-22
  • 2021-10-18
  • 2021-06-06
相关资源
相似解决方案