2017.12.07 React组件嵌套以及for循环渲染子组件

1.嵌套组件之父组件的定义:

export default class Examines extends Component{

    componentWillMount()  {
        console.log("aaaaaaaa");

        var data2={

            action:"queryTaskOfManager"
        };
        Common.getData(JSON.stringify(data2),function (ret) {
            alert(ret);
            var data3={
                name:ret.msg.name,

            };
            alert(data3);
        });

    }

    render(){
        var items = [];
        for (var i = 0; i < 10; i++) {
            items.push(<OneTask/>);            //这里父组件Examines,嵌套了子组件<OnTask/>
        }
        return(

            <div style={{ background: ‘#ECECEC‘, padding: ‘30px‘ }} onLoad={this.componentWillMount}>
            <Row gutter={16}>

                {items}
            </Row>
            </div>

        );

    }

}

2.嵌套组件之子组件的定义:

class OneTask extends React.Component{
    constructor(props) {

        super(props);
        this.state = {
            date: ‘‘,
            person:‘‘,
            work:‘‘,
            applyclass:‘‘,
            otherinfo:‘‘,
            applytime1:‘‘,
            applytime2:‘‘,
            timecount:‘‘
        }
    }
    render(){
        return (
            <Col span={8}>
                <Card title="请假申请单" bordered={false}>
                    <p>申请人:{this.state.person}</p>
                    <p>申请时间:{this.state.date}</p>
                    <p>岗位:{this.state.work}</p>
                    <p>请假类型:{this.state.applyclass}</p>
                    <p>请假备注:{this.state.otherinfo}</p>
                    <p>请假时间:{this.state.applytime1}到,{this.state.applytime2}</p>
                    <p>共请假:{this.state.timecount}天</p>
                    <Row gutter={16}>
                        <Col span={12}>
                            <Button type="primary"  id="apply">批准</Button>

                        </Col>
                        <Col span={12}>
                            <Button type="danger" style={{marginLeft:30}} id="cancel">不批</Button>
                        </Col>
                    </Row>
                </Card>
            </Col>

        )}
}

3.for循环渲染子组件:

render(){
        var items = [];
        for (var i = 0; i < 10; i++) {
            items.push(<OneTask/>);
        }
        return(

            <div style={{ background: ‘#ECECEC‘, padding: ‘30px‘ }} onLoad={this.componentWillMount}>
            <Row gutter={16}>

                {items}
            </Row>
            </div>

        );

    }
时间: 2024-10-07 05:47:02

2017.12.07 React组件嵌套以及for循环渲染子组件的相关文章

2017.12.07 React路由到不同组件界面

前提: 引入的react-router组件必须是2.*.*的版本,不然其他版本不是这样的写法   1.index首页路由到不同组件界面: import React,{Component} from 'react'; import ReactDOM from 'react-dom'; import { Router,hashHistory,Route } from 'react-router'; import Apply from './apply'; import Examines from '

react父子组件通讯-----&gt;下面用到的ref属性调用子组件的方法,可以实现子组件往父组件传递参数,可以通过在父组件的方法中调用子组件的方法,通过返回值来拿到值,也可以在子组件中,对数据处理完后,调用父组件传给子组件的参数或者方法,来实现传参,

<scripttype="text/babel"> var Child =React.createClass({ getInitialState: function() { return {color:"",childMsg:"我是子组件的信息"}; }, changeColor: function(e) { this.setState({color:e.target.getAttribute("data-color&quo

详解vue父组件传递props异步数据到子组件的问题

案例一 父组件parent.vue // asyncData为异步获取的数据,想传递给子组件使用 <template> <div> 父组件 <child :child-data="asyncData"></child> </div> </template> <script> import child from './child' export default { data: () => ({ as

vue 简单实现父组件向子组件传值,简单来说就是子组件肆意妄为的调用父组件里后台返回的值

首先在于父子组件传值的方法很多,本人在这里只是简单描述一下一个组件里面引用了子组件,那么子组件如何才能获取父组件中后台返回的值呢? 首先调用组件相信大家都应该明白了(不明白的自己撸撸文档), <info-head :orderInfo="orderInfo" :changePrice="changePrice"></info-head> 上面的是父组件中引用的子组件,其中orderInfo为父组件中定义的接收后台返回的值需要向平常一样的去定义

vue父组件props参数太大时子组件created取不到数据-解决方法

问题: 父组件调用子组件: <mk-form :list="formList" :formvalue="formvalue"></mk-form> 其中的formList数据是用ajax调用的,数据比较大,应该有些延迟 子组件的created中调用props时,输出的是默认数据: 输出:  解决方法: 第一种:加上 v-if 来判断数据是佛加载完成了,加载完了再渲染: <mk-form v-if="formList!=null

Taro 中父组件传多个值到子组件, 不同页面传值, 子组件修改父组件值

1.父子组件传值需借助 中间ts文件 hook/context-manager.tsx // 使用hook给父子组件共享数组 import { createContext } from "@tarojs/taro"; export default createContext({}); 2.父组件 import TripContext from '../../hook/context-manager' import Trip_success from '../../components/

2017.12.07 Ajax获取服务器数据并发送到前端

1.前端:在React渲染页面之前就加载服务器数据: componentWillMount() { console.log("aaaaaaaa"); var data2={ action:"queryTaskOfManager" }; Common.getData(JSON.stringify(data2),function (ret) { alert(ret); }); } 2.前端调用这个React生命周期函数: 3.ajax文件封装成组件后,导出: 4.Aja

2017.12.18 Android开发之消息队列(实现子线程修改UI组件)

1.界面布局,以及组件初始化: 组件初始化: private Button button; private Handler handler; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button=(Button)findViewById(R.id.button)

react通过父组件渲染子组件中的内容

说明: 代码: // less require ('./static/less/index.less') // 核心 var React = require('react') var ReactDom = require('react-dom') var ReactRouter = require('react-router-dom') var Router = ReactRouter.BrowserRouter var Route = ReactRouter.Route var Link =