Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Styled components 什么';s样式化组件和样式化组件/宏之间的区别_Styled Components - Fatal编程技术网

Styled components 什么';s样式化组件和样式化组件/宏之间的区别

Styled components 什么';s样式化组件和样式化组件/宏之间的区别,styled-components,Styled Components,有时我看到的进口产品略有不同 import styled,{withTheme}来自“styled components/macro” import styled,{withTheme}来自“styled components” 由于它们具有相同的功能,我无法理解它们之间的区别,谷歌也无法提供任何帮助。在产品中,样式化组件为css类生成独特的哈希,如.eeZmbc或.ZzNLl。这些用于节省空间,但对开发人员来说没有用处 对于开发中的语义类名,存在。它生成的名称类似于.Navbar\uuuu I

有时我看到的进口产品略有不同

import styled,{withTheme}来自“styled components/macro”
import styled,{withTheme}来自“styled components”


由于它们具有相同的功能,我无法理解它们之间的区别,谷歌也无法提供任何帮助。

在产品中,样式化组件为css类生成独特的哈希,如
.eeZmbc
.ZzNLl
。这些用于节省空间,但对开发人员来说没有用处

对于开发中的语义类名,存在。它生成的名称类似于
.Navbar\uuuu Item-sc-14eztoj-1
中的
.FileName\uuuuu StyledComponent-generatedHash
,以帮助我们追溯元素/样式的来源

因此,如果您使用
createreact应用程序
,您可以使用此插件,而无需弹出,也无需将其添加到
babel config
。您只需将导入从
样式化组件更改为。在IDE中快速查找和替换就可以了

所有编译时代码转换都由

babel-plugin宏
为希望使用编译时代码转换的库定义了一个标准接口,而无需用户将babel-plugin添加到其构建系统中(除了babel-plugin宏,后者在理想情况下已经存在)

我个人手动将babel插件添加到配置文件中,并使用标准导入,如
样式化组件