首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >样式化组件和样式化组件/宏之间的区别是什么

样式化组件和样式化组件/宏之间的区别是什么
EN

Stack Overflow用户
提问于 2021-02-08 22:34:12
回答 1查看 1.6K关注 0票数 4

有时我看到的是略微不同的导入

import styled, { withTheme } from "styled-components/macro";

import styled, { withTheme } from "styled-components";

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

EN

回答 1

Stack Overflow用户

发布于 2021-02-26 14:14:31

在生产环境中,样式化组件为.eeZmbc.ZzNLl等css类生成唯一的散列。它们用于节省空间,但对开发人员在开发中没有用处。

对于开发中的语义类名,存在一个babel plugin。它生成像.FileName__StyledComponent-generatedHash中的.Navbar__Item-sc-14eztoj-1这样的名称,以帮助我们追溯元素/样式的源代码。

因此,如果你使用create-react-app,你可以在不弹出和不添加到babel config的情况下使用这个插件。您只需将导入从styled-components更改为styled-components/macro即可。在IDE中快速查找和替换就可以做到这一点。

所有编译时代码转换都由babel-plugin-macros处理

babel-plugin-macros为想要使用编译时代码转换的库定义了一个标准接口,而不需要用户将babel插件添加到他们的构建系统中(而不是babel- plugin -宏,这在理想情况下已经到位)。

就我个人而言,我手动将babel插件添加到配置文件中,并使用像styled-components这样的标准导入。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66103622

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档