styled-components 弃用 injectGlobal

Posted angfl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了styled-components 弃用 injectGlobal相关的知识,希望对你有一定的参考价值。

styled-components 最新版本是v4.1.2,但是从v4开始,就酱原来的injectGlobal方法用createGlobalStyle替换了。用法上也有一些不同了:

我今天直接引injectGlobal照原来的方法使用,就一直报错

//style.js
import {injectGlobal} from ‘styled-components‘;
injectGlobal`
body{
    margin:0;
    padding:0;
    background:red;
}
`

 

 


 技术分享图片

说styled-components库里没有抛出这个方法,不对啊,以前是这样用过的,后来一查,原来是被弃用了。

emmmm,怎么办呢,还得用呀,不过人家又提供了个新的方法。createGlobalStyle,真真是见名知意了。

//style.js
import {createGlobalStyle} from ‘styled-components‘;
export const GlobalStyled = createGlobalStyle`
body{
    margin:0;
    padding:0;
    background:red;
}
//在项目主文件(总容器)下引入,我这里用的是App.js
import React from ‘react‘;
import {GlobalStyled} from ‘./style.js‘;
class App extends React.Components{
render(){
    return(
        <div className=‘App‘>
            <GlobalStyled />
        </div>
    )
}
}

 


当当当,大功告成了! 红红火火恍恍惚惚

技术分享图片



以上是关于styled-components 弃用 injectGlobal的主要内容,如果未能解决你的问题,请参考以下文章

markdown Serviços - InjeçãodeDependência(DI)+ como usarumeserviçoemum compo

Styled-components vs Emotion - 如何在 Styled-components 上重新应用 css`style` 函数

styled-components - 为啥在组件样式之后注入全局样式?

使用 styled-components 在组件/元素之间共享样式

styled-components:使用额外的样式扩展现有组件

使用 Styled-components 修改 SVG (react / next)