首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尝试导入错误:'createGlobalStyle‘不是从'styled-components’导出的

尝试导入错误:'createGlobalStyle‘不是从'styled-components’导出的
EN

Stack Overflow用户
提问于 2021-05-31 17:20:16
回答 1查看 1.3K关注 0票数 3

我正在尝试从样式化组件导入createGlobalStyle,但它似乎不起作用。我安装了样式组件npm包,版本是@3.4.10。

代码语言:javascript
复制
const GlobalStyle = createGlobalStyle`
html {
    height: 100%
}
* {
    padding: 0;
    margin: 0
}

`
export default GlobalStyle

上面的代码是我试图导入createGlobalStyle的地方

代码语言:javascript
复制
import React from 'react'
import ReactDOM from 'react-dom'
import App from './App'
import GlobalStyle from './theme/globalStyles'

ReactDOM.render(
  <React.StrictMode>
    <App />
    <GlobalStyle />
  </React.StrictMode>,
  document.getElementById('root')
)

这是我使用GlobalStyle组件的index.js文件。

运行代码后,我得到以下错误:

代码语言:javascript
复制
./src/theme/globalStyles.js
Attempted import error: 'createGlobalStyle' is not exported from 'styled-components'.

如有任何帮助,将不胜感激

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-31 17:48:20

如果您正在使用styled-components版本3.4.10,那么您必须使用injectGlobal而不是createGlobalStyle,因为createGlobalStyle只在v4 of styled-components中发布。查看:[Deprecated] injectGlobal

因此,为了让您的代码正常工作,您必须更改一些内容:

代码语言:javascript
复制
import { injectGlobal } from 'styled-components';

const GlobalStyle = injectGlobal`
html {
    height: 100%
}
* {
    padding: 0;
    margin: 0
}
`

export default GlobalStyle

在你的index.ts

代码语言:javascript
复制
import React from 'react'
import ReactDOM from 'react-dom'
import App from './App'
import GlobalStyle from './theme/globalStyles'

ReactDOM.render(
  <React.StrictMode>
    <GlobalStyle /> // this comes first
    <App />
  </React.StrictMode>,
  document.getElementById('root')
)
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67771051

复制
相关文章

相似问题

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