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

CheckBox组件中半选属性indeterminate的表现效果问题 #2262

Closed
sfwxp945 opened this issue Apr 27, 2023 · 0 comments · Fixed by #2301
Closed

CheckBox组件中半选属性indeterminate的表现效果问题 #2262

sfwxp945 opened this issue Apr 27, 2023 · 0 comments · Fixed by #2301
Labels
improvement 一些可以优化的地方

Comments

@sfwxp945
Copy link

NutUI scenes(nutui 场景)

H5(@nutui/nutui)

NutUI-vue version(nutui-vue 版本)

4.0.6

Vue version(vue 版本)

3.3.0-alpha.13

Operating environment(运行环境)

dev:h5

Citation method(引用方式)

npm

Node version(node 版本)

18.13.0

Browser and its version(浏览器及其版本)

Chrome(107.0.5304.88)

System and its version(系统及其版本)

WIn10

Reproduction link(重现链接)

codesandbox.io/s/niupm4

Steps to reproduce(重现步骤)

半选的表现形式应该是大于0,小于全长的时候就激活
现在是在全部未选中的时候,选择一项,不会被激活。在全选之后再取消某一项,就激活了。
从代码的逻辑上看,就是在符合条件时,开启indeterminate=true

What is expected?(期望的结果是什么?)

正常的半选表现形式,即:大于0且小于全长时(开启indeterminate=true),能正常触发半选状态。

What is actually happening?(实际的结果是什么?)

实际上,在全部未选中的时候,选中某一个CheckBox(符合大于0且小于全长),不会激活半选状态
(v-model=false且indeterminate=true,不会被触发)

Remarks(补充说明)

感觉v-model与indeterminate的属性之间的关系比较奇怪。v-model=true表示当前被选中,false表示未选中。但是夹杂indeterminate的时候,就会变成现在这样比较奇怪的局面,只有在v-model=true且indeterminate=true,才会被触发。v-model=false且indeterminate=true,不会被触发。
但在最初全部未选中的情况下,选中一个之后,强行设置v-model=true且indeterminate=true,会导致直接全选。
以目前的状态,我个人觉得这个半选的属性indeterminate应该高于v-model属性:只要是设置了indeterminate=true,即为半选。初始化为false,在change事件中激活。

@eiinu eiinu added the improvement 一些可以优化的地方 label Apr 27, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
improvement 一些可以优化的地方
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants