跳到主要内容
ArcBlock Community

默认值不生效

Kawa
支持
pages-kitqaresolved

image.png

image.png

javascript
import React from '@blocklet/pages-kit/builtin/react';
import { Box } from '@blocklet/pages-kit/builtin/mui/material';

const DividerBar = ({ height_key = '30px', color = '#a4a4a4' }) => {
  // Blue color
  return (
    <Box
      sx={{
        width: '100%',
        height: height_key,
        backgroundColor: color,
      }}
    />
  );
};

export default DividerBar;

5 条回复

xiaoliang16个月前

我觉得这是一个正常的逻辑?

Text 类型的属性设置了默认的时候,在页面上添加组件,会自动在属性输入框中填入设置的默认值。

如果用户在界面中删除了输入框中的内容,这个属性的值是空字符串,而不是 null ,这个时候是不会使用默认值,可能用户就是想输入空值。

JS 的执行也是类似的逻辑,您代码中的尝试去设置默认值:

javascriptCopy
const DividerBar = ({ height_key = '30px', color = '#a4a4a4' })

只有当 color 参数没传的时候才会使用默认值,传了空字符串 JS 的逻辑也不会使用设置的默认值。

Kawa16个月前

1748396157944.jpg

1748395961525.jpg

1748395934760.jpg

1748395903531.jpg

都试了一遍,也不见默认值生效啊

xiaoliang16个月前

下面参数这里的默认值已经被删了,你可以把组件添加到一个页面中,可以看到,默认值会自动填到输入框中

是通过自动填上默认值来使用设置的默认值,而不是输入框填空值的时候回退到默认值,因为我们觉得 Text 类型的属性,空字符串是有意义的

image.png

Kawa16个月前

好的

Kawa16个月前

image.png

试了一下跟你说的一样,感谢你的回复

回复