index.js 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. import React, { Component } from 'react';
  2. import './index.less';
  3. import { Icon } from 'antd-mobile';
  4. import Assets from '@src/components/Assets';
  5. import Tag from '../Tag';
  6. import Money from '../Money';
  7. export class Block extends Component {
  8. render() {
  9. const { className = '', children } = this.props;
  10. return <div className={`g-block ${className}`}>{children}</div>;
  11. }
  12. }
  13. export class TopBlock extends Component {
  14. render() {
  15. const { className = '', theme = 'default', children } = this.props;
  16. return <div className={`g-top-block ${className} ${theme}`}>{children}</div>;
  17. }
  18. }
  19. export class TagBlock extends Component {
  20. render() {
  21. const { className = '', theme = 'default', tag, children } = this.props;
  22. return (
  23. <div className={`g-tag-block ${className} ${theme}`}>
  24. <div className="g-tag-block-tag">{tag}</div>
  25. {children}
  26. </div>
  27. );
  28. }
  29. }
  30. export class LinkBlock extends Component {
  31. render() {
  32. const { className = '', theme = 'default', title, sub } = this.props;
  33. return (
  34. <div className={`g-link-block ${className} ${theme}`}>
  35. <div className="g-link-block-title">{title}</div>
  36. <div className="g-link-block-sub">{sub}</div>
  37. <div className="g-link-block-icon">
  38. <Icon type="right" size="xxs" color="#fff" />
  39. </div>
  40. </div>
  41. );
  42. }
  43. }
  44. export class CourseBlock extends Component {
  45. render() {
  46. return (
  47. <Block className="course-block">
  48. <div className="title">OG20整合刷题-语法SC</div>
  49. <div className="block-body">
  50. <Assets name="c_b" />
  51. <div className="info">
  52. <div className="teacher">
  53. 授课老师<span>李小小</span>
  54. </div>
  55. <div className="desc">老师特别特别特别好,上课特别认真…</div>
  56. <div className="division" />
  57. <div className="data">
  58. <Tag size="small">适合新手</Tag>
  59. <div className="result">
  60. 优质回答<span>89</span>
  61. </div>
  62. </div>
  63. </div>
  64. </div>
  65. </Block>
  66. );
  67. }
  68. }
  69. export class DataBlock extends Component {
  70. render() {
  71. return (
  72. <Block className="data-block">
  73. <Assets name="d_b" />
  74. <div className="info">
  75. <div className="title">OG16/17/18/19语法千行</div>
  76. <div className="desc">资料非常好,帮助复习。</div>
  77. <div className="division" />
  78. <div className="data">
  79. <div className="people">888人已购</div>
  80. <Money value="200" />
  81. </div>
  82. </div>
  83. </Block>
  84. );
  85. }
  86. }