const primary = red [500];有什么区别? //#F44336 const accent = red ['A200']; //#F44336?

时间:2019-05-20 03:45:38

标签: material-ui

以下三种获取颜色的方法:

const primary = red[500]; // #F44336

const accent = purple['A200']; // #E040FB

const accent = purple.A200; // #E040FB(替代方法)

但是我不知道它们之间有什么不同? 而我们应该使用哪一个呢?

1 个答案:

答案 0 :(得分:0)

  

下面三种方式获得颜色[...]它们之间有什么区别?

如果“他们”是指获得颜色的方法...

正如您所指出的,获得颜色的方法(purple['A200']purple.A200)是等效的。它源于可以通过键([])访问JavaScript对象中的属性的事实,反之亦然。但是,属性不能以数字开头,因此red.500不起作用。

如果“它们”表示颜色值...

值在https://material.io/design/color/#tools-for-picking-colors处定义。

  

我们应该使用哪个?

如果“一个”指的是颜色...

您应该使用适合应用程序叙述的颜色(由应用程序的图形或UI设计师选择),或者找出适合自己的颜色,最适合您

首先阅读this,以了解颜色在Material Design中的工作原理。

如果“一个”是指方法...

使用任何适合您的方法。这是您的代码。在两种情况下,它产生相同的结果。我可能会选择[]语法,因为它既适用于常规颜色也适用于强调色,并且我希望代码保持一致。