[base-ui][material-ui] 不受控制的选择组件在带有重置按钮的< form>内部未完全重置

zc0qhyus  于 2个月前  发布在  其他
关注(0)|答案(5)|浏览(30)

重复问题

  • 我搜索了现有的问题

最新版本

  • 我测试了最新版本

重现步骤 🕹

不使用状态的实时示例链接: https://codesandbox.io/p/sandbox/youthful-bash-w5sq9t
使用状态的实时示例链接: https://codesandbox.io/p/sandbox/mystifying-fire-lkdm86

当前行为 😯

当使用Select组件时,按下表单中的重置按钮不会将Select的值恢复为其默认值。
如果我使用带状态的Select,它将正常工作。

预期行为 🤔

当我们不使用状态(对于第一个代码sandbox)时,点击重置按钮会重置Select值的变化。

上下文 🔦

  • 无响应*

你的环境 🌎

npx @mui/envinfo

System:
    OS: Windows 10 10.0.19045
  Binaries:
    Node: 20.9.0 - C:\Program Files\nodejs\node.EXE
    Yarn: 1.22.19 - ~\AppData\Roaming\npm\yarn.CMD
    npm: 10.1.0 - C:\Program Files\nodejs\npm.CMD
  Browsers:
    Chrome: Not Found
    Edge: Chromium (120.0.2210.77)
  npmPackages:
    @emotion/react: ^11.11.1 => 11.11.1
    @emotion/styled: ^11.11.0 => 11.11.0
    @mui/base:  5.0.0-beta.28
    @mui/core-downloads-tracker:  5.15.1
    @mui/material: ^5.15.1 => 5.15.1
    @mui/private-theming:  5.15.1
    @mui/styled-engine:  5.15.1
    @mui/system:  5.15.1
    @mui/types:  7.2.11
    @mui/utils:  5.15.1
    @types/react: ^18.2.45 => 18.2.45
    react: ^18.2.0 => 18.2.0
    react-dom: ^18.2.0 => 18.2.0
    typescript: ^4.9.5 => 4.9.5
hm2xizp9

hm2xizp91#

感谢aayush-makwana的报告,很抱歉回复晚了。
@mj12albert @michaldudak @colmtuite 我想知道这是否应该在Base UI中得到支持(当我们基于Base UI发布组件时,Material UI也应该得到支持)。你怎么看?我测试了一下:

相关的其他问题也是如此:#40253 , #40245 , #40252 , #40244 , #40243

vcudknz3

vcudknz32#

是的,Base UI的Select应该理想地以浏览器自动填充的方式支持它。

n1bvdmb6

n1bvdmb63#

@michaldudak 很好🙌🏼
我会在这个基础上添加Base UI标签和相关问题(除了已经在Base UI中工作的输入,🎉)。除了添加Base UI标签之外,我还需要做其他事情吗?

bvpmtnay

bvpmtnay4#

这对于组件(例如 Select )来说可能很难实现,因为它们不一定具有原生的HTML表单控件(例如 input , select ),因此需要依赖一个由(父级) <form> 触发的 reset 事件: https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement/reset_event
然而,既然这种重置行为可以在受控模式下实现,我认为目前并不是非常紧急的问题。

fwzugrvs

fwzugrvs5#

除了添加基本UI标签,我还需要做其他事情吗?
不需要了,这就足够了。我们可以在讨论完最近的API更改后重新审视它。

相关问题