Vue el-radio单选框或el-select选择框 不回显问题

背景:之前有遇到过el-select框不回显的问题,今天又遇到el-radio的,不过有了之前的经验这次处理快了很多,因此记录下来

<!--前端页面-->
<el-dialog title="el-radio单选框或el-select选择框 不回显问题" :visible.sync="dataFormShow" width="800px">
        <el-form :model="modifyData" ref="dataForm" :rules="rules" label-width="auto">

          <el-form-item label="测试" prop="isManyFile">
            <el-radio-group v-model="modifyData.isManyFile">
              <el-radio label="1">单个</el-radio>
              <el-radio label="2">多个</el-radio>
            </el-radio-group>
          </el-form-item>

        </el-form>
        <div slot="footer" class="dialog-footer">
          <el-button @click="cancelForm()">取 消</el-button>
          <el-button v-loading="confirmBtnLoading" type="primary" @click="addAndEdit()">确 定</el-button>
        </div>
 </el-dialog>
{
    "code":"e1000",
    "message":"success",
    "data":{
        "pageSize":10,
        "currentPage":1,
        "totalCount":3,
        "data":[
            { 
                "id":1,
                "isManyFile":2 
            }
        ]
    }
}
修改前

可以看到数据的字段名没问题,但是并没有回显。 实际上是因为 <el-radio label="1">这里的值是字符串,返回的json数据里"isManyFile":2的值是数字,所以没匹配上

解决方法一:
后端调整,将返回json里的值改成字符串

{
    "code":"e1000",
    "message":"success",
    "data":{
        "pageSize":10,
        "currentPage":1,
        "totalCount":3,
        "data":[
            { 
                "id":1,
                "isManyFile":"2"
            }
        ]
    }
}

解决方法二:
前端调整,利用v-for遍历出el-radio标签的数字值

<el-form-item label="生成数量" prop="isManyFile">
        <el-radio-group v-model="modifyData.isManyFile">
          <el-radio  v-for="item in isManyFileList" :label="item.value" :key="item.value">
            {{item.label}}
          </el-radio>
        </el-radio-group>
</el-form-item>

data() {
      return {
        isManyFileList: [
          {'label': '单个', 'value': 1},
          {'label': '多个', 'value': 2}
        ]
    }
}
修改后

el-select框同理,匹配id时注意数据类型是否相同

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容