详解react的两种动态改变css样式的方法

 更新时间:2021年04月13日 14:34:56   作者:独步炎凉的大彬  
这篇文章主要介绍了详解react的两种动态改变css样式的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

第一种:动态添加class,以点击按钮让文字显示隐藏为demo

import React, { Component, Fragment } from 'react';
import './style.css';
class Demo extends Component{
    constructor(props) {
        super(props);
        this.state = {
            display: true
        }
        this.handleshow = this.handleshow.bind(this)
        this.handlehide = this.handlehide.bind(this)
    }
    render() {
        return (
            <Fragment>
                {/*动态添加一个class来改变样式*/}
                <p className={this.state.display?"active":"active1"}>你是我的唯一</p>
                <button onClick={this.handlehide}>点击隐藏</button>
                <button onClick={this.handleshow}>点击显示</button>
            </Fragment>
        )
    }
    handleshow() {
        this.setState({
            display:true
        })
    }
    handlehide() {
        this.setState({
            display:false
        })
    }
}
export default Demo;

css代码:

 .active{
      display: block;
  }
  .active1{
    display: none;
  }

第二种:动态添加一个style,以点击按钮让文字显示隐藏为demo

import React, { Component, Fragment } from 'react';
class Demo extends Component{
    constructor(props) {
        super(props);
        this.state = {
            display2: true
        }
        this.handleshow2 = this.handleshow2.bind(this)
        this.handlehide2 = this.handlehide2.bind(this)
    }
    render() {
        const display2 = {
            display:this.state.display2 ? 'block' : 'none'
        }
        return (
            <Fragment>
                 {/*动态添加一个style来改变样式*/}
                 <p style={display2}>你是我的唯一</p>
                <button onClick={this.handlehide2}>点击隐藏2</button>
                <button onClick={this.handleshow2}>点击显示2</button>
            </Fragment>
        )
    }
    handleshow2() {
        this.setState({
            display2:true
        })
    }
    handlehide2() {
        this.setState({
            display2:false
        })
    }
}
export default Demo;

总结:用class来改变css样式,可以写多个动态改变的css属性,看起不杂乱,而用style写的话,如果写多个css属性就会看起复杂。都是个人观点,不足请指出

到此这篇关于详解react的两种动态改变css样式的方法的文章就介绍到这了,更多相关react动态改变css样式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 详解React中的this指向

    详解React中的this指向

    这篇文章主要介绍了React中的this指向的相关资料,帮助大家更好的理解和学习使用React,感兴趣的朋友可以了解下
    2021-04-04
  • react-router JS 控制路由跳转实例

    react-router JS 控制路由跳转实例

    这篇文章主要介绍了react-router JS 控制路由跳转实例,react实现路由可以直接使用react-router。有兴趣的可以了解一下
    2017-06-06
  • 解决React初始化加载组件会渲染两次的问题

    解决React初始化加载组件会渲染两次的问题

    这篇文章主要介绍了解决React初始化加载组件会渲染两次的问题,文中有出现这种现象的原因及解决方法,感兴趣的同学跟着小编一起来看看吧
    2023-08-08
  • React18之update流程从零实现详解

    React18之update流程从零实现详解

    这篇文章主要为大家介绍了React18之update流程从零实现详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01
  • React视频播放控制组件Video Controls的实现

    React视频播放控制组件Video Controls的实现

    本文主要介绍了React视频播放控制组件Video Controls的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-02-02
  • 深入理解React 三大核心属性

    深入理解React 三大核心属性

    本文主要介绍了React 三大核心属性,主要包括State属性,Props属性,Refs属性,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • react项目从新建到部署的实现示例

    react项目从新建到部署的实现示例

    这篇文章主要介绍了react项目从新建到部署的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • React 组件中的 bind(this)示例代码

    React 组件中的 bind(this)示例代码

    这篇文章主要介绍了 React 组件中的 bind(this) ,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-09-09
  • 详解react setState

    详解react setState

    这篇文章主要介绍了react setState的相关资料,帮助大家更好的理解和学习使用react,感兴趣的朋友可以了解下
    2021-04-04
  • React RenderProps模式超详细讲解

    React RenderProps模式超详细讲解

    render props是指一种在 React 组件之间使用一个值为函数的 prop 共享代码的技术。简单来说,给一个组件传入一个prop,这个props是一个函数,函数的作用是用来告诉这个组件需要渲染什么内容,那么这个prop就成为render prop
    2022-11-11

最新评论