Javascript 使用样式化组件分发React UI库

Javascript 使用样式化组件分发React UI库,javascript,reactjs,Javascript,Reactjs,我是一名初级开发人员,刚开始在一家公司工作 我有一点反应方面的经验,无法解决当前的情况 我遇到的问题是,当我从npm中分发的库导入时,我的React项目无法识别样式化组件 我在我的项目中遇到了这个错误。 我已经研究并意识到巴别塔需要更多的选择,比如使用 “babel插件样式组件”选项 不幸的是,在使用该命令并随命令一起分发后,这项功能不起作用 纱线构建==网页包--生产模式 我是否可以使用样式化组件库 谢谢大家! 学生:我想我需要提供更多的信息 谢天谢地,很多人都回答了我的问题,但我试了一下,

我是一名初级开发人员,刚开始在一家公司工作

我有一点反应方面的经验,无法解决当前的情况

我遇到的问题是,当我从npm中分发的库导入时,我的React项目无法识别样式化组件

我在我的项目中遇到了这个错误。

我已经研究并意识到巴别塔需要更多的选择,比如使用 “babel插件样式组件”选项

不幸的是,在使用该命令并随命令一起分发后,这项功能不起作用

纱线构建==网页包--生产模式

我是否可以使用样式化组件库

谢谢大家!

学生:我想我需要提供更多的信息

谢天谢地,很多人都回答了我的问题,但我试了一下,又犯了一个错误。

附言: 我的文件结构:

我的按钮代码

export const StyledButton = styled.button`
  background-color: white;
  border-radius: 3px;
  border: 2px solid palevioletred;
  color: palevioletred;
  margin: 0.5em 1em;
  padding: 0.25em 1em;
      ${props => props.primary && css`
        background: palevioletred;
        color: white;
      `}
    `;
export default class Button extends React.Component {
  constructor(props) {
    super(props);
   console.log("Props:", props);
}
render() {
  return (
  <div>
    <StyledButton>{this.props.children}</StyledButton>
    {/* <button> {this.props.children} </button> */}
  </div>);
}
import Button from "./Button";
导出默认按钮

My index.js of src folder

export * from "./components";
My babel.config.js

module.exports = function BabelConfigJS(api) {
api.cache(true);

const presets = ["@babel/preset-env", "@babel/preset-react"];

const plugins = [
    "styled-components",
    [
        "@babel/plugin-transform-runtime",
        {
            corejs: 2,
            helpers: true,
            regenerator: true,
            useESModules: false,
        },
    ],
    [
        "@babel/plugin-proposal-class-properties",
        {
            loose: true,
        },
    ], 
];

return {
    sourceType: "unambiguous",
    presets,
    plugins,
};
};
PS:错误代码


您只需将组件名称更改为大写,它与babel等无关

// not <styledButton/>
<StyledButton/>
//不是

这是React的要求,因为在JSX中,小写标记名被认为是HTML标记

您只需将组件名称更改为大写,它与babel等无关

// not <styledButton/>
<StyledButton/>
//不是
这是React的要求,因为在JSX中,小写标记名被认为是HTML标记

该错误(实际上只是一个Eslint投诉)根本不涉及使用
样式化组件

它只是说组件应该是PascalCase,而不是像现在这样的camelCase

也就是说,与其说是
,不如说是

这个错误(实际上只是一个Eslint投诉)根本就不是指使用
样式化组件

它只是说组件应该是PascalCase,而不是像现在这样的camelCase


也就是说,不是
,而是

谢谢您回答这个问题!然而,我在帖子末尾又犯了一个错误。谢谢你回答这个问题!然而,我在帖子末尾又犯了一个错误。谢谢你回答我的问题。然而,在我更改了我在帖子中提到的内容之后,我又犯了一个错误。有没有办法解决这个问题?谢谢你回答我的问题。然而,在我更改了我在帖子中提到的内容之后,我又犯了一个错误。有没有办法解决这个问题?欢迎来到SO!您可以发布您收到的实际错误以及组件的代码吗?所有的图像显示的是,您在组件中有一个错误,这对我们试图帮助您时没有帮助。当然!我会发布的。你也可以发布错误文本吗?当然可以!我会发布的!欢迎来到SO!您可以发布您收到的实际错误以及组件的代码吗?所有的图像显示的是,您在组件中有一个错误,这对我们试图帮助您时没有帮助。当然!我会发布的。你也可以发布错误文本吗?当然可以!我会发布的!