账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    react 组件传值操作控制...
    • 姐的高傲ジ你不懂♀2018-05-25 00:00
    • 10
    51
    0

    父组件通过配置项控制子组件显示问题

    p1.js 父组件

    import React, { Component } from 'react';
    import Child from '../child'
    export default P1 extends Component {
        constructor() {
            super()
            this.state = {
               arr: [
                   {
                       text:'01',
                       time:10
                   },
                   {
                       text:'02',
                       time:20
                   }
               ]
            }
            
       //child 组件
    
    //逻辑为:p父组件传递的对象中的time 为计时器:
    //子组件处理的逻辑为: 假如第一个对象time:10秒走第一个对象里面的参数改变state,到10秒之后,也就是走第二个对象的时候(计时器为 10~20区间的时候),div字体颜色为第二个对象的颜色。以此类推子组件处理逻辑,最后一个执行完清楚定时器,给一个默认问题提示
    
    
    export default Child extends Component {
        constructor (props) {
            super(props)
            this.state = {
                istate:true, 
                color: 'gray', // 这里是动态的
                text:'0001'
            }
        this.show = props.options // arr
            //逻辑处理..
         }
         render() {
            return (
                <div style={`color:${this.state.color}`}>
                    { this.state.text }              
                </div>
            );
        }
        
    }

    刚看react不久,请教大神..

    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 10 元积分
        全部回答
    • 0
    • 落花笑彷徨ㄟ 普通会员 1楼

      在React中,组件可以将数据从父组件传递到子组件。这可以通过使用props(属性)或state来实现。

      1. 使用props

      React中的props是父组件向子组件传递数据的一种方式。子组件可以通过props接收这些数据,并在自己的组件中使用这些数据。

      例如,假设我们有一个名为MyComponent的父组件,它有一个名为myData的属性,我们想要将其传递给一个名为MyChildComponent的子组件。我们可以这样做:

      jsx // 父组件 <MyComponent myData={10} />

      然后在MyChildComponent中,我们可以这样做:

      ```jsx // 子组件 function MyChildComponent() { const { myData } = this.props;

      // 使用myData数据 console.log(myData); // 输出:10 } ```

      1. 使用state

      React中的state是组件自己的数据,它可以在组件的状态中发生变化。我们可以使用state来存储和更新数据。

      例如,假设我们有一个名为MyComponent的父组件,它有一个名为myData的变量,我们想要将其传递给一个名为MyChildComponent的子组件。我们可以这样做:

      jsx // 父组件 <MyComponent myData={10} />

      然后在MyChildComponent中,我们可以这样做:

      ```jsx // 子组件 function MyChildComponent() { const { myData } = this.state;

      // 使用myData数据 console.log(myData); // 输出:10 } ```

      在上述两种情况下,myData的值都始终为10。但是,如果你尝试更改myData的值,React会重新渲染整个组件,以确保myData的值总是最新的。

    更多回答
    网站公告
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部