Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Component] [select] <el-select :persistant="false" /> 导致select框中显示value而非label #16112

Open
CarterLi opened this issue Mar 12, 2024 · 4 comments
Labels

Comments

@CarterLi
Copy link
Contributor

Bug Type: Component

Environment

  • Vue Version: 3.4.21
  • Element Plus Version: 2.6.1
  • Browser / OS: Chrome 122.0.0.0 / macOS 14.4
  • Build Tool: Vite

Reproduction

Related Component

  • el-select

Reproduction Link

Element Plus Playground

Steps to reproduce

打开复现链接

What is Expected?

select框中显示Option1

What is actually happening?

显示1

Additional comments

点击一下输入框展开下拉列表就正常了

@warmthsea
Copy link
Contributor

建议直接用户层处理
源码库层感觉难以处理这个问题

image


const option = getOption(props.modelValue)

@nova1751
Copy link
Contributor

想要初始就渲染value对应的label值则必须需要整个下拉框的数据,此时将persistent设置为false似乎不太合理。

@CarterLi
Copy link
Contributor Author

我的理解persistant=false只是把下拉框的dom节点移除,不是把数据也移除

@warmthsea
Copy link
Contributor

用户层不触发DOM,实现回显解决方案

https://element-plus.run/#eyJzcmMvQXBwLnZ1ZSI6Ijx0ZW1wbGF0ZT5cbiAgPGRpdj5cbiAgICA8ZWwtc2VsZWN0XG4gICAgICByZWY9XCJzZWxlY3RSZWZcIlxuICAgICAgdi1tb2RlbD1cInZhbHVlMVwiXG4gICAgICBwbGFjZWhvbGRlcj1cIlNlbGVjdFwiXG4gICAgICBzdHlsZT1cIndpZHRoOiAyNDBweFwiXG4gICAgICA6cGVyc2lzdGVudD1cImZhbHNlXCJcbiAgICA+XG4gICAgICA8ZWwtb3B0aW9uXG4gICAgICAgIHYtZm9yPVwiaXRlbSBpbiBvcHRpb25zXCJcbiAgICAgICAgOmtleT1cIml0ZW0udmFsdWVcIlxuICAgICAgICA6bGFiZWw9XCJpdGVtLmxhYmVsXCJcbiAgICAgICAgOnZhbHVlPVwiaXRlbS52YWx1ZVwiXG4gICAgICAvPlxuICAgIDwvZWwtc2VsZWN0PlxuICA8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQgbGFuZz1cInRzXCIgc2V0dXA+XG5pbXBvcnQgeyBFbFNlbGVjdCBhcyBFbFNlbGVjdHMgfSBmcm9tICdAZWxlbWVudC1wbHVzL2NvbXBvbmVudHMnXG5pbXBvcnQgeyBuZXh0VGljaywgb25Nb3VudGVkLCByZWYgfSBmcm9tICd2dWUnXG5cbmNvbnN0IHZhbHVlMSA9IHJlZignMScpXG5jb25zdCBvcHRpb25zID0gW1xuICB7XG4gICAgdmFsdWU6ICcxJyxcbiAgICBsYWJlbDogJ09wdGlvbjEnLFxuICB9LFxuICB7XG4gICAgdmFsdWU6ICcyJyxcbiAgICBsYWJlbDogJ09wdGlvbjInLFxuICB9LFxuICB7XG4gICAgdmFsdWU6ICczJyxcbiAgICBsYWJlbDogJ09wdGlvbjMnLFxuICB9LFxuICB7XG4gICAgdmFsdWU6ICc0JyxcbiAgICBsYWJlbDogJ09wdGlvbjQnLFxuICB9LFxuICB7XG4gICAgdmFsdWU6ICc1JyxcbiAgICBsYWJlbDogJ09wdGlvbjUnLFxuICB9LFxuXVxuXG5jb25zdCBzZWxlY3RSZWYgPSByZWY8SW5zdGFuY2VUeXBlPHR5cGVvZiBFbFNlbGVjdHM+PigpXG5jb25zdCBwaWNrU2VsZWN0TGFiZWwgPSAoKSA9PiB7XG4gIGNvbnN0IHNlbGVjdGVkTGFiZWwgPSBvcHRpb25zLmZpbmQoKGkpID0+IGkudmFsdWUgPT09IHZhbHVlMS52YWx1ZSk/LmxhYmVsXG4gIGlmIChzZWxlY3RlZExhYmVsICYmIHNlbGVjdFJlZi52YWx1ZSkge1xuICAgIHNlbGVjdFJlZi52YWx1ZS5zdGF0ZXMuc2VsZWN0ZWRMYWJlbCA9IHNlbGVjdGVkTGFiZWxcbiAgfVxufVxuXG5vbk1vdW50ZWQoYXN5bmMgKCkgPT4ge1xuICBhd2FpdCBuZXh0VGljaygpXG4gIHBpY2tTZWxlY3RMYWJlbCgpXG59KVxuPC9zY3JpcHQ+XG4iLCJpbXBvcnQtbWFwLmpzb24iOiJ7XG4gIFwiaW1wb3J0c1wiOiB7fVxufSIsInRzY29uZmlnLmpzb24iOiJ7XG4gIFwiY29tcGlsZXJPcHRpb25zXCI6IHtcbiAgICBcInRhcmdldFwiOiBcIkVTTmV4dFwiLFxuICAgIFwianN4XCI6IFwicHJlc2VydmVcIixcbiAgICBcIm1vZHVsZVwiOiBcIkVTTmV4dFwiLFxuICAgIFwibW9kdWxlUmVzb2x1dGlvblwiOiBcIkJ1bmRsZXJcIixcbiAgICBcInR5cGVzXCI6IFtcImVsZW1lbnQtcGx1cy9nbG9iYWwuZC50c1wiXSxcbiAgICBcImFsbG93SW1wb3J0aW5nVHNFeHRlbnNpb25zXCI6IHRydWUsXG4gICAgXCJhbGxvd0pzXCI6IHRydWUsXG4gICAgXCJjaGVja0pzXCI6IHRydWVcbiAgfSxcbiAgXCJ2dWVDb21waWxlck9wdGlvbnNcIjoge1xuICAgIFwidGFyZ2V0XCI6IDMuM1xuICB9XG59XG4iLCJfbyI6e319

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants