8.React 组件封装

最近一直没有合适的时间整理笔记,今天抽空,大致写点 -- 2020/1/16 16:05 周四

直接上代码:

import React from "react";
import { connect } from "react-redux";
import PropTypes from "prop-types";
import moment from "moment";

class QuarterlyPicker extends React.Component {
  constructor(props) {
    super(props)
    this.state = {

    }
  }

  /**
   * 本来想写个关于 季度的时间选择器,但是真的太多了,比较懒,就算了,反正也不难,也不经典。
   * 关键也不符合这篇文章的主题,于是,此处省略200行代码。
   *
   * 对了!工作中别人告诉我的,公共组件的搭建思想,或者说注意事项:
   * 1.最好不要使用 redux。
   * 2.不要在公共组件中 请求数据
   * 3.最好从父级传入所需的信息
   * 4.这一切都是为了尽量做到 低耦合、高内聚
   */

  render() {
    return (
      <div>

      </div>
    )
  }
}

QuarterlyPicker.propTypes = {
  value: PropTypes.string,
  startValue: PropTypes.string,
  endValue: PropTypes.string,
  open: PropTypes.bool,
  onOk: PropTypes.func
}

QuarterlyPicker.defaultProps = {
  value: `${moment().format("YYYY")}-${moment().quarter()}}`,
  startValue: "1970-1",
  endValue: `${moment().format("YYYY")}-${moment().quarter()}}`,
  open: undefined,
  onOk: () => { console.log(1) }
}

export default connect(state => state, {})(QuarterlyPicker)