默认材质UI间距在哪里定义?

时间:2020-06-10 14:19:55

标签: reactjs material-ui material-design themes

我已经意识到Material-ui主题的默认间距是8px。 theme.spacing(1)等于8px。 theme.spacing(2)等于16px,依此类推。我知道间距以一种覆盖方式工作,因此可以编写<Box m={4} />theme = {spacing: 4}。但是,我有兴趣知道默认情况下间距为8px的定义位置。

注意: DefaultTheme的默认主题没有定义的间距,我也无法在material-ui仓库中找到它

2 个答案:

答案 0 :(得分:2)

Default theme将间距定义为createSpacing函数的结果:

function createMuiTheme(options = {}) {
  const {
    // ...
    spacing: spacingInput,
    // ...
  } = options;

  // ...
  const spacing = createSpacing(spacingInput);
  // ...
}

HerecreateSpacing函数的定义。

export default function createSpacing(spacingInput = 8) {
  // ...
  const spacing = (...args) => {
  // ...
  }
  // ...
  return spacing
}

答案 1 :(得分:0)

在哪里定义?

代码中的某个地方,但是我不确定是否指出代码中的哪个地方有什么区别,也许您想知道...

为什么是8像素?

这是Material's Design

的标准

如何更改?

您可以in the docs看到它。