zoukankan      html  css  js  c++  java
  • reactjs(三)怎么动态实现字体颜色的切换

    有两种方式来实现动态切换字体颜色。

    第一种方式

    <!DOCTYPE html>
    <html>
      <head>
        <meta charset="UTF-8" />
        <title></title>
        <script src="https://static.runoob.com/assets/react/react-0.14.7/build/react.min.js"></script>
        <script src="https://static.runoob.com/assets/react/react-0.14.7/build/react-dom.min.js"></script>
        <script src="https://static.runoob.com/assets/react/browser.min.js"></script>
      </head>
      <body>
        <div id="example"></div>
        <script type="text/babel">
          var LikeButton = React.createClass({
            getInitialState: function() {
              return {liked: "yellow"};
            },
            handleClick: function(event) {
              this.setState({liked:"blue"});
            },
            render: function() {
            var text = this.state.liked;
            var style = {
                color:text
            }{/*css样式既可以写在组件内也可以写在组件外*/}
              return (
                <p onClick={this.handleClick} style={style}>{/*这里不能直接用如style={color:"yellow"}这种属性赋予方式*/}
                  点我,点我,点我我就变身。
                </p>
              );
            }
          });
    
          React.render(
            <LikeButton />,
            document.getElementById('example')
          );
        </script>
      </body>
    </html>

    这种方式只能实现点击一次切换样式。


    第二种方式

    <!DOCTYPE html>
    <html>
      <head>
        <meta charset="UTF-8" />
        <title></title>
        <script src="https://static.runoob.com/assets/react/react-0.14.7/build/react.min.js"></script>
        <script src="https://static.runoob.com/assets/react/react-0.14.7/build/react-dom.min.js"></script>
        <script src="https://static.runoob.com/assets/react/browser.min.js"></script>
      </head>
      <body>
        <div id="example"></div>
        <script type="text/babel">
          var LikeButton = React.createClass({
            getInitialState: function() {
              return {liked: false};
            },
            handleClick: function(event) {
              this.setState({liked:!this.state.liked});
            },
            render: function() {
            var text = this.state.liked?"yellow":"blue";
            var style = {
                color:text
            }
              return (
                <p onClick={this.handleClick} style={style}>
                  你我。点我切换状态。
                </p>
              );
            }
          });
    
          React.render(
            <LikeButton />,
            document.getElementById('example')
          );
        </script>
      </body>
    </html>
    

    两者之间没什么多大的区别,主要是第二种运用了三元运算符,实现了点击循环切换的功能。

  • 相关阅读:
    Mac 远程连接 Windows
    更优雅的方式: JavaScript 中顺序执行异步函数
    Node.js 上传文件
    win10 系统右键菜单不显示文字(只有小图标)修复方法
    JavaScript 排序算法(JavaScript sorting algorithms)
    JavaScript addEventListener 第三个参数
    前端小白之每天学习记录----angula2--(1)
    H5如何与Native通信Hybrid交互--(1)
    vuex学习--(1)
    前端小白之每天学习记录----php(9)简单的api
  • 原文地址:https://www.cnblogs.com/jiandanshishu/p/12953281.html
Copyright © 2011-2022 走看看