1 | # reactlite
|
2 |
|
3 | >
|
4 |
|
5 | [![NPM](https://img.shields.io/npm/v/reactlite.svg)](https://www.npmjs.com/package/reactlite) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)
|
6 |
|
7 | ## Install
|
8 |
|
9 | ```bash
|
10 | npm install --save reactlite
|
11 | ```
|
12 |
|
13 | ## Usage
|
14 |
|
15 | ### DEMO
|
16 |
|
17 | https://codesandbox.io/s/7yqyq2q8x
|
18 |
|
19 | ### Box
|
20 |
|
21 | ```jsx
|
22 | <Box color="red" fontSize="24px">
|
23 | 24px Red Div
|
24 | </Box>
|
25 | ```
|
26 |
|
27 | ### Container
|
28 |
|
29 | ```jsx
|
30 | <Container
|
31 | smBackgroundColor="red"
|
32 | mdBackgroundColor="green"
|
33 | lgBackgroundColor="blue"
|
34 | >
|
35 | media query auto change backgroundColor: Red/Green/Blue
|
36 | </Container>
|
37 | ```
|
38 |
|
39 | ### Layer
|
40 |
|
41 | ```jsx
|
42 | import React, { Component } from 'react';
|
43 |
|
44 | import { Layer, Text } from 'reactlite';
|
45 |
|
46 | class Example extends Component {
|
47 | render() {
|
48 | let { showLayer } = this.props;
|
49 | return (
|
50 | showLayer && (
|
51 | <Layer>
|
52 | <Text>Layer Content</Text>
|
53 | </Layer>
|
54 | )
|
55 | );
|
56 | }
|
57 | }
|
58 | ```
|
59 |
|
60 | ### 全局 Layer
|
61 |
|
62 | ```jsx
|
63 | import React, { Component } from 'react';
|
64 |
|
65 | import { Box, Button, Text, Layer } from 'reactlite';
|
66 |
|
67 | class App extends Component {
|
68 | render() {
|
69 | return <Layer.Placeholder />;
|
70 | }
|
71 | }
|
72 | class Example extends Component {
|
73 | add = () => {
|
74 | this.element = <Text>Layer Content</Text>;
|
75 | Layer.mount(this.element);
|
76 | };
|
77 | remove = () => {
|
78 | Layer.unmount(this.element);
|
79 | };
|
80 | render() {
|
81 | return (
|
82 | <Box>
|
83 | <Button onClick={this.add}>add</Button>
|
84 | <Button onClick={this.remove}>remove</Button>
|
85 | </Box>
|
86 | );
|
87 | }
|
88 | }
|
89 | ```
|
90 |
|
91 | unmount self
|
92 |
|
93 | ```jsx
|
94 | import React, { Component } from 'react';
|
95 |
|
96 | import { Layer } from 'reactlite';
|
97 |
|
98 | class App extends Component {
|
99 | render() {
|
100 | return <Layer.Placeholder />;
|
101 | }
|
102 | }
|
103 | class Modal extends Component {
|
104 | unmount = () => {
|
105 | this.props.unmount();
|
106 | };
|
107 | render() {
|
108 | return (
|
109 | <div>
|
110 | <button onClick={this.unmount}>unmount self</button>
|
111 | </div>
|
112 | );
|
113 | }
|
114 | }
|
115 | class Example extends Component {
|
116 | add = () => {
|
117 | this.element = <Modal />;
|
118 | Layer.mount(this.element);
|
119 | };
|
120 |
|
121 | render() {
|
122 | return <button onClick={this.add}>add</button>;
|
123 | }
|
124 | }
|
125 | ```
|
126 |
|
127 | ## License
|
128 |
|
129 | MIT © [lomocc](https://github.com/lomocc)
|