如何在TypeScript中动态设置MaterialUI网格大小属性的值?

特里

当使用诸如XL之类的Grid尺寸道具时,如何在TypeScript中向其动态传递值?

例如,*更新示例说明

import Grid, { GridSize } from "@material-ui/core/Grid";
let value: GridSize = 12/4;
xl={value}

类型“数字”不可分配给类型“ GridSize”

如果我设置诸如

type gridSize = boolean | "auto" | 1 | 2 | 12 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | undefined

不能将类型'number'分配给类型'boolean | “汽车” | 1 | 2 | 12 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | undefined'.ts(2769)

同一个问题,如何将数字转换为这种类型?

**在下面标记的答案很有帮助,最后我将其转换为GridSize并在边缘周围添加了一些单元测试。

让值= 12/4作为GridSize

约瑟夫·波德莱基(JózefPodlecki)

已经定义了GridSize类型,可以在代码中使用

export type GridSize = 'auto' | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;

import Grid, { GridSize } from "@material-ui/core/Grid";

const App = () => {
  let size: GridSize = 1;

  return <Grid xl={size}>
  </Grid>
}

render(<App />, document.getElementById("root"));

- 编辑

我看到,xl道具也接受booleanundefined

您还可以扩展GridSize类型以包括这两个。

type NewGridSize = GridSize | boolean | undefined;

let size: NewGridSize  = undefined;

- 编辑

Typescript没有这种高级的流量控制分析来假设这是 3

在这种情况下,您必须做一些肮脏的技巧才能将其投射到任何对象上。

let value: GridSize = 12/4 as any;

或者,您可以使类型卫士(不过这会过分杀伤)

function compute(value: any): value is 3 {
  return value;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在struts2中动态设置url标记的“值”属性?

来自分类Dev

如何在C#中动态设置按钮图像的大小?

来自分类Dev

网格中的动态值

来自分类Dev

如何在灯具中设置动态模型属性?

来自分类Dev

如何在Visual Studio 2012中为资源编辑器设置网格大小?

来自分类Dev

Ruby-如何在类中为动态属性设置值

来自分类Dev

如何在Kendo UI中更改网格页面大小的默认值?

来自分类Dev

如何在TypeScript中为类属性动态分配值

来自分类Dev

如何在Vue JS中设置动态样式属性

来自分类Dev

如何在TypeScript中为动态“ this”值定义类型?

来自分类Dev

如何在React中动态更改CSS属性的值?

来自分类Dev

如何在TypeScript动态属性中建模?

来自分类Dev

TypeScript:如何动态设置对象的属性?

来自分类Dev

如何在TypeScript中动态访问对象属性

来自分类Dev

如何在CreateView中动态设置ForeignKey的初始值?

来自分类Dev

如何在materialUI中设置身体元素的样式

来自分类Dev

如何在Blazor中动态设置ValidationMessage <TValue> .For属性?

来自分类Dev

如何在MaterialUI中将网格居中

来自分类Dev

如何在DataTemplate中设置网格的高度

来自分类Dev

如何在C#中动态更改网格的子文本块的字体大小?

来自分类Dev

如何在Winform应用程序中动态生成适合窗口大小的按钮网格

来自分类Dev

如何在WPF中为两个文本框网格动态设置字体大小

来自分类Dev

如何在UITableViewCell中设置动态标签大小

来自分类Dev

如何在 ASP.Net 中为动态网格视图设置页面加载?

来自分类Dev

如何在 AMP 表单中动态设置值

来自分类Dev

如何在 TypeScript 中为 NULL 属性设置默认值

来自分类Dev

如何在 datetimepicker 中为 minView 设置动态值?

来自分类Dev

如何设置值为语句的动态属性

来自分类Dev

如何在laravel中动态设置每页的最大值?

Related 相关文章

  1. 1

    如何在struts2中动态设置url标记的“值”属性?

  2. 2

    如何在C#中动态设置按钮图像的大小?

  3. 3

    网格中的动态值

  4. 4

    如何在灯具中设置动态模型属性?

  5. 5

    如何在Visual Studio 2012中为资源编辑器设置网格大小?

  6. 6

    Ruby-如何在类中为动态属性设置值

  7. 7

    如何在Kendo UI中更改网格页面大小的默认值?

  8. 8

    如何在TypeScript中为类属性动态分配值

  9. 9

    如何在Vue JS中设置动态样式属性

  10. 10

    如何在TypeScript中为动态“ this”值定义类型?

  11. 11

    如何在React中动态更改CSS属性的值?

  12. 12

    如何在TypeScript动态属性中建模?

  13. 13

    TypeScript:如何动态设置对象的属性?

  14. 14

    如何在TypeScript中动态访问对象属性

  15. 15

    如何在CreateView中动态设置ForeignKey的初始值?

  16. 16

    如何在materialUI中设置身体元素的样式

  17. 17

    如何在Blazor中动态设置ValidationMessage <TValue> .For属性?

  18. 18

    如何在MaterialUI中将网格居中

  19. 19

    如何在DataTemplate中设置网格的高度

  20. 20

    如何在C#中动态更改网格的子文本块的字体大小?

  21. 21

    如何在Winform应用程序中动态生成适合窗口大小的按钮网格

  22. 22

    如何在WPF中为两个文本框网格动态设置字体大小

  23. 23

    如何在UITableViewCell中设置动态标签大小

  24. 24

    如何在 ASP.Net 中为动态网格视图设置页面加载?

  25. 25

    如何在 AMP 表单中动态设置值

  26. 26

    如何在 TypeScript 中为 NULL 属性设置默认值

  27. 27

    如何在 datetimepicker 中为 minView 设置动态值?

  28. 28

    如何设置值为语句的动态属性

  29. 29

    如何在laravel中动态设置每页的最大值?

热门标签

归档