yewanji 2023-08-18 12:09 采纳率: 36.3%
浏览 6
已结题

vuejs 使用jsx渲染方式,发现el-select 无法回显问题

官方这种是可以回显的

 <el-select v-model="value" placeholder="请选择">
    <el-option
      v-for="item in options"
      :key="item.value"
      :label="item.label"
      :value="item.value">
    </el-option>
  </el-select>

以下是我用jsx 动态渲染的方式,选中某项的时候,值发现变化了,但是没有回显

export default {
  functional:true,
  render:function (h,context) {
    return h('el-select',{
      props:{
        value:context.props.gradeId,
        placeholder:context.props.placeholder
      },
      on:{
        input:(value)=>{
          context.listeners.input(value)
        }
      },
    },
     [h('el-option',{
       props:{
         value:1,
         label:'一年级',
       }
     }),
       h('el-option',{
         props:{
           value:2,
           label:'二年级',
         }
       }),
       h('el-option',{
         props:{
           value:3,
           label:'三年级',
         }
       })
     ]
    )
  }
}

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-08-18 14:37
    关注

    【以下回答由 GPT 生成】

    我可以通过以下步骤来解决这个问题:

    1. 确保你已经安装了vue-loader,它是用来编译Vue.js的JSX语法的。
    2. 在Webpack的配置文件中,添加以下代码片段: javascript module: { rules: [ { test: /\.jsx?$/, loader: 'babel-loader', exclude: /node_modules/ } ] } 这将确保Vue.js的JSX语法会被babel-loader正确编译。
    3. 在你的代码中,确保你正确引入了Vue: javascript import Vue from 'vue'
    4. 在你的Vue组件中,确保你正确导入了相关的组件: javascript import { ElSelect, ElOption } from 'element-ui'
    5. 在你的Vue组件中,正确注册使用到的组件: javascript export default { components: { 'el-select': ElSelect, 'el-option': ElOption }, // ... }
    6. 确保你的value属性是双向绑定的,并且在组件的data选项中定义了value属性: javascript data() { return { value: null } }
    7. 在你的Vue组件的渲染函数中,使用箭头函数来绑定父组件传入的input事件: javascript render: function (h, context) { return h('el-select', { props: { value: context.props.gradeId, placeholder: context.props.placeholder }, on: { input: (value) => { context.listeners.input(value) } } }, [ // ... ]) }
    8. 在使用这个自定义的渲染组件时,确保你传入了正确的v-model绑定和input事件: html <custom-select v-model="selectedValue" @input="handleInput"></custom-select> 其中,selectedValue是你在父组件中定义的响应式数据,handleInput是处理input事件的方法。

    如果你按照以上步骤操作,并且确保你的代码中没有其他错误,那么el-select应该能够正确回显选中的值了。如果问题仍然存在,请尝试检查其他部分的代码或在Vue.js的官方论坛中寻求帮助。



    【相关推荐】



    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 8月18日
  • 创建了问题 8月18日

悬赏问题

  • ¥15 可以实现这个有不同背景颜色的九九乘法表吗?
  • ¥50 python写segy数据时出错2
  • ¥20 关于R studio 做精确稳定检验的问题!(语言-r语言)
  • ¥50 用贝叶斯决策方法,设计CAD程序
  • ¥20 关于#目标检测#的问题:(qq收集表到时间才能填写,填写的份数有上限)
  • ¥50 ZYNQ7020双核FLAHS烧写的问题
  • ¥20 ue 5 中想要实现第一人称人物左右行走摆动的效果,摄像头只向右摆动一次(关键词-结点)
  • ¥15 AD9164瞬时带宽1.8G,怎么计算出来?
  • ¥15 鼠标右键,撤销删除 复制 移动,要怎样删除? HKEY_CLASSES_ROOT*\shellex\ContextMenuHandlers 没用
  • ¥15 服务器安装php5.6版本