18 | <%= theme.excerpt_link %> 19 |
20 | <% } %> 21 | <% } else { %> 22 | <%- post.content %> 23 | <% } %> 24 |├── .babelrc ├── .editorconfig ├── .eslintrc ├── .gitignore ├── .npmignore ├── .travis.yml ├── README.md ├── doc ├── .gitignore ├── README.md ├── _api │ ├── compontents │ │ ├── button.md │ │ ├── grid.md │ │ ├── icon.md │ │ └── switch.md │ ├── index.md │ └── quick.md ├── _config.yml ├── package.json ├── public.tar.gz ├── public │ ├── 2016 │ │ └── 07 │ │ │ ├── 26 │ │ │ └── hello-world │ │ │ │ └── index.html │ │ │ └── 27 │ │ │ └── React-D │ │ │ └── index.html │ ├── api │ │ └── index.html │ ├── archives │ │ ├── 2016 │ │ │ ├── 07 │ │ │ │ └── index.html │ │ │ └── index.html │ │ └── index.html │ ├── atom.xml │ ├── css │ │ ├── benchmark.css │ │ ├── index.css │ │ └── page.css │ ├── fruit-ui │ │ ├── bundle.js │ │ ├── components │ │ │ ├── actionSheet │ │ │ │ ├── ActionSheet.js │ │ │ │ └── index.js │ │ │ ├── button │ │ │ │ ├── button.js │ │ │ │ └── index.js │ │ │ ├── carousel │ │ │ │ ├── Carousel.js │ │ │ │ └── index.js │ │ │ ├── dialog │ │ │ │ ├── Dialog.js │ │ │ │ └── index.js │ │ │ ├── grid │ │ │ │ ├── Col.js │ │ │ │ ├── ColBody.js │ │ │ │ ├── ColFoot.js │ │ │ │ ├── ColHead.js │ │ │ │ ├── Row.js │ │ │ │ └── index.js │ │ │ ├── icon │ │ │ │ ├── icon.js │ │ │ │ └── index.js │ │ │ ├── mask │ │ │ │ ├── Mask.js │ │ │ │ └── index.js │ │ │ ├── message │ │ │ │ └── index.js │ │ │ ├── searchBar │ │ │ │ ├── index.js │ │ │ │ └── searchBar.js │ │ │ ├── switch │ │ │ │ ├── index.js │ │ │ │ └── switch.js │ │ │ └── toast │ │ │ │ ├── Toast.js │ │ │ │ └── index.js │ │ ├── f-ui.css │ │ └── index.js │ ├── images │ │ ├── chaitin.png │ │ ├── check.png │ │ ├── down.png │ │ ├── feed.png │ │ ├── github.png │ │ ├── htmlburger.png │ │ ├── icons.png │ │ ├── iphone.png │ │ ├── itunescn.png │ │ ├── jsfiddle.png │ │ ├── laravel.png │ │ ├── logo.png │ │ ├── menu.png │ │ ├── patreon.png │ │ ├── paypal.png │ │ ├── phonedemo.png │ │ ├── qrcode.png │ │ ├── reactui-qrcode.png │ │ ├── reactui-qrcode1.png │ │ ├── reactui-qrcode2.png │ │ ├── screen.png │ │ ├── search.png │ │ ├── sky.jpg │ │ ├── strikingly.png │ │ └── weixinpay.png │ ├── index.html │ ├── js │ │ ├── browser.js │ │ ├── browser.min.js │ │ ├── common.js │ │ ├── index.js │ │ ├── lc.js │ │ ├── money.js │ │ └── smooth-scroll.min.js │ └── sitemap.xml ├── source │ ├── _posts │ │ ├── React-D.md │ │ └── hello-world.md │ ├── api │ │ └── index.md │ └── dis │ │ └── index.md └── themes │ ├── landscape │ ├── .gitignore │ ├── Gruntfile.js │ ├── LICENSE │ ├── README.md │ ├── _config.yml │ ├── languages │ │ ├── default.yml │ │ ├── fr.yml │ │ ├── nl.yml │ │ ├── no.yml │ │ ├── ru.yml │ │ ├── zh-CN.yml │ │ └── zh-TW.yml │ ├── layout │ │ ├── _partial │ │ │ ├── after-footer.ejs │ │ │ ├── archive-post.ejs │ │ │ ├── archive.ejs │ │ │ ├── article.ejs │ │ │ ├── footer.ejs │ │ │ ├── google-analytics.ejs │ │ │ ├── head.ejs │ │ │ ├── header.ejs │ │ │ ├── mobile-nav.ejs │ │ │ ├── post │ │ │ │ ├── category.ejs │ │ │ │ ├── date.ejs │ │ │ │ ├── gallery.ejs │ │ │ │ ├── nav.ejs │ │ │ │ ├── tag.ejs │ │ │ │ └── title.ejs │ │ │ └── sidebar.ejs │ │ ├── _widget │ │ │ ├── archive.ejs │ │ │ ├── category.ejs │ │ │ ├── recent_posts.ejs │ │ │ ├── tag.ejs │ │ │ └── tagcloud.ejs │ │ ├── archive.ejs │ │ ├── category.ejs │ │ ├── index.ejs │ │ ├── layout.ejs │ │ ├── page.ejs │ │ ├── post.ejs │ │ └── tag.ejs │ ├── package.json │ ├── scripts │ │ └── fancybox.js │ └── source │ │ ├── css │ │ ├── _extend.styl │ │ ├── _partial │ │ │ ├── archive.styl │ │ │ ├── article.styl │ │ │ ├── comment.styl │ │ │ ├── footer.styl │ │ │ ├── header.styl │ │ │ ├── highlight.styl │ │ │ ├── mobile.styl │ │ │ ├── sidebar-aside.styl │ │ │ ├── sidebar-bottom.styl │ │ │ └── sidebar.styl │ │ ├── _util │ │ │ ├── grid.styl │ │ │ └── mixin.styl │ │ ├── _variables.styl │ │ ├── fonts │ │ │ ├── FontAwesome.otf │ │ │ ├── fontawesome-webfont.eot │ │ │ ├── fontawesome-webfont.svg │ │ │ ├── fontawesome-webfont.ttf │ │ │ └── fontawesome-webfont.woff │ │ ├── images │ │ │ └── banner.jpg │ │ └── style.styl │ │ ├── fancybox │ │ ├── blank.gif │ │ ├── fancybox_loading.gif │ │ ├── fancybox_loading@2x.gif │ │ ├── fancybox_overlay.png │ │ ├── fancybox_sprite.png │ │ ├── fancybox_sprite@2x.png │ │ ├── helpers │ │ │ ├── fancybox_buttons.png │ │ │ ├── jquery.fancybox-buttons.css │ │ │ ├── jquery.fancybox-buttons.js │ │ │ ├── jquery.fancybox-media.js │ │ │ ├── jquery.fancybox-thumbs.css │ │ │ └── jquery.fancybox-thumbs.js │ │ ├── jquery.fancybox.css │ │ ├── jquery.fancybox.js │ │ └── jquery.fancybox.pack.js │ │ └── js │ │ └── script.js │ └── reactd │ ├── _config.yml │ ├── layout │ ├── index.ejs │ ├── layout.ejs │ ├── page.ejs │ ├── partials │ │ ├── ad.ejs │ │ ├── baidu_tongji.ejs │ │ ├── blog.ejs │ │ ├── community_dropdown.ejs │ │ ├── dis.ejs │ │ ├── ga.ejs │ │ ├── header.ejs │ │ ├── main_menu.ejs │ │ ├── sidebar.ejs │ │ └── sponsors.ejs │ └── post.ejs │ └── source │ ├── css │ ├── _blog.styl │ ├── _common.styl │ ├── _demo.styl │ ├── _search.styl │ ├── _settings.styl │ ├── _syntax.styl │ ├── benchmark.styl │ ├── index.styl │ └── page.styl │ ├── fruit-ui │ ├── bundle.js │ ├── components │ │ ├── actionSheet │ │ │ ├── ActionSheet.js │ │ │ └── index.js │ │ ├── button │ │ │ ├── button.js │ │ │ └── index.js │ │ ├── carousel │ │ │ ├── Carousel.js │ │ │ └── index.js │ │ ├── dialog │ │ │ ├── Dialog.js │ │ │ └── index.js │ │ ├── grid │ │ │ ├── Col.js │ │ │ ├── ColBody.js │ │ │ ├── ColFoot.js │ │ │ ├── ColHead.js │ │ │ ├── Row.js │ │ │ └── index.js │ │ ├── icon │ │ │ ├── icon.js │ │ │ └── index.js │ │ ├── mask │ │ │ ├── Mask.js │ │ │ └── index.js │ │ ├── message │ │ │ └── index.js │ │ ├── searchBar │ │ │ ├── index.js │ │ │ └── searchBar.js │ │ ├── switch │ │ │ ├── index.js │ │ │ └── switch.js │ │ └── toast │ │ │ ├── Toast.js │ │ │ └── index.js │ ├── f-ui.css │ └── index.js │ ├── images │ ├── chaitin.png │ ├── check.png │ ├── down.png │ ├── feed.png │ ├── github.png │ ├── htmlburger.png │ ├── icons.png │ ├── iphone.png │ ├── itunescn.png │ ├── jsfiddle.png │ ├── laravel.png │ ├── logo.png │ ├── menu.png │ ├── patreon.png │ ├── paypal.png │ ├── phonedemo.png │ ├── qrcode.png │ ├── reactui-qrcode.png │ ├── reactui-qrcode1.png │ ├── reactui-qrcode2.png │ ├── screen.png │ ├── search.png │ ├── sky.jpg │ ├── strikingly.png │ └── weixinpay.png │ └── js │ ├── browser.js │ ├── browser.min.js │ ├── common.js │ ├── index.js │ ├── lc.js │ ├── money.js │ └── smooth-scroll.min.js ├── example ├── app.js ├── component │ ├── page │ │ ├── index.js │ │ └── styles.less │ └── title │ │ ├── index.js │ │ └── styles.less ├── index.html └── pages │ ├── actionSheet │ ├── index.js │ └── style.less │ ├── button │ ├── button.less │ └── index.js │ ├── carousel │ ├── index.js │ └── style.less │ ├── dialog │ ├── index.js │ └── styles.less │ ├── grid │ ├── grid.less │ └── index.js │ ├── home │ ├── images │ │ ├── actionsheet.png │ │ ├── button.png │ │ ├── carousel.png │ │ ├── dialog.png │ │ ├── grid.png │ │ ├── icon.png │ │ ├── search.png │ │ ├── switch.png │ │ └── toast.png │ ├── index.js │ └── index.less │ ├── icon │ ├── index.js │ └── styles.less │ ├── searchBar │ ├── index.js │ └── style.less │ ├── switch │ ├── index.js │ └── style.less │ └── toast │ ├── index.js │ └── styles.less ├── package.json ├── src ├── components │ ├── actionSheet │ │ ├── ActionSheet.js │ │ ├── index.js │ │ └── styles.less │ ├── base.less │ ├── button │ │ ├── button.js │ │ ├── index.js │ │ └── styles.less │ ├── carousel │ │ ├── Carousel.js │ │ ├── index.js │ │ └── styles.less │ ├── dialog │ │ ├── Dialog.js │ │ ├── index.js │ │ └── styles.less │ ├── grid │ │ ├── Col.js │ │ ├── ColBody.js │ │ ├── ColFoot.js │ │ ├── ColHead.js │ │ ├── Row.js │ │ ├── index.js │ │ └── styles.less │ ├── icon │ │ ├── icon.js │ │ ├── index.js │ │ └── styles.less │ ├── mask │ │ ├── Mask.js │ │ ├── index.js │ │ └── styles.less │ ├── message │ │ ├── index.js │ │ └── styles.less │ ├── searchBar │ │ ├── index.js │ │ ├── searchBar.js │ │ └── styles.less │ ├── switch │ │ ├── index.js │ │ ├── styles.less │ │ └── switch.js │ └── toast │ │ ├── Toast.js │ │ ├── index.js │ │ └── styles.less └── index.js └── webpack.config.js /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "stage": 2, 3 | "optional": ["es7.classProperties"] 4 | } 5 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # http://editorconfig.org 2 | root = true 3 | 4 | [*] 5 | end_of_line = lf 6 | charset = utf-8 7 | indent_style = space 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | indent_size = 4 11 | 12 | [*.md] 13 | trim_trailing_whitespace = false 14 | -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "ecmaFeatures": { 3 | "jsx": true, 4 | "modules": true 5 | }, 6 | "parserOptions": { 7 | "ecmaVersion": 6 8 | }, 9 | "env": { 10 | "browser": true, 11 | "node": true 12 | }, 13 | "parser": "babel-eslint", 14 | "rules": { 15 | "camelcase": 2, 16 | "curly": 2, 17 | "quotes": [2, "single"], 18 | "strict": [2, "never"], 19 | "react/jsx-uses-react": 2, 20 | "react/jsx-uses-vars": 2, 21 | "react/react-in-jsx-scope": 2, 22 | 23 | "no-else-return" : 2, 24 | "no-unreachable" : 2, 25 | "no-empty-function" : 1, 26 | "no-extra-bind" : 2, 27 | "no-extra-semi" : 2, 28 | "no-multi-spaces" : 2, 29 | "keyword-spacing" : [1,{"before": true, "after": true}], 30 | "max-nested-callbacks" : 2, 31 | "no-mixed-spaces-and-tabs" : 2, 32 | "space-before-function-paren" : 1, 33 | "space-infix-ops" : 2, 34 | "spaced-comment" : 2, 35 | "arrow-spacing" : 2, 36 | "no-var" : 2 37 | }, 38 | "plugins": [ 39 | "react" 40 | ] 41 | } 42 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .idea 2 | coverage 3 | lib 4 | node_modules 5 | npm-debug.log 6 | .DS_Store 7 | dist 8 | publish.sh 9 | dist.tar.gz 10 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | .*rc 2 | .*.yml 3 | .idea 4 | webpack.config.* 5 | docs 6 | example 7 | coverage -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - stable 4 | script: 5 | - npm test 6 | - npm run coverage 7 | after_script: 8 | npm install coveralls && cat ./coverage/lcov.info | coveralls -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # react-ui 2 | Based on the react to maintain a set of ionic style of reusable component library [document](http://www.react-d.com/api/) 3 | ## Installation 4 | 5 | ``` 6 | npm install fruit-ui 7 | ``` 8 | 9 | [React-design](http://www.react-d.com) 10 | 11 | ## Show 12 |  13 | 14 | ## Phone preview 15 |  16 | 17 | 18 | [demo体验](http://demo.react-d.com/#/?_k=qgj3q0) 19 | 20 | ## Downloads 21 | 22 | ``` 23 | git clone https://github.com/react-design/react-ui.git 24 | ``` 25 | 26 | ## Install dependencies 27 | 28 | ``` 29 | npm install --registry=https://registry.npm.taobao.org --verbose 30 | ``` 31 | 32 | ## Start server 33 | 34 | ``` 35 | npm start 36 | ``` 37 | 38 | ## How to visit 39 | 40 | Open url `http://127.0.0.1:8080/` in browser. 41 | 42 | 43 | # Components 44 | Components of the plan, the subsequent will continue to add new components 45 | 46 | - [x] Button 47 | - [x] Input 48 | - [x] grid 49 | - [x] Switch 50 | - [ ] Numberbox 51 | - [ ] Checkbox 52 | - [ ] Select 53 | - [x] ActionSheet 54 | - [ ] Tabbar 55 | - [x] Dialog 56 | - [x] Toast 57 | - [ ] Popover 58 | - [x] Carousel 59 | - [ ] Popover 60 | - [ ] Navigation 61 | - [ ] Spiner 62 | - [ ] Datepicker 63 | - [ ] Processbar 64 | - [x] Searchbar 65 | - [ ] ShareGroup 66 | 67 | 68 | # Change log 69 | 70 | 71 | ## Project Structure 72 | ```react-ui 73 | |-- example 74 | |-- lib 75 | |-- src 76 | | |-- components 77 | | | |-- button 78 | | | | |-- button.js 79 | | | | |-- index.js 80 | | | | `-- styles.less 81 | | | |-- ... 82 | | `-- index.js 83 | |-- .babelrc 84 | |-- .editorconfig 85 | |-- .eslintrc 86 | |-- .travis.yml 87 | |-- package.json 88 | `-- webpack.config.js 89 | ``` 90 | 91 | ## Welcome 92 | 93 | * Star 94 | * Fork 95 | * PR 96 | * Issue 97 | -------------------------------------------------------------------------------- /doc/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | Thumbs.db 3 | db.json 4 | *.log 5 | node_modules/ 6 | .deploy*/ 7 | dist.tar.gz 8 | -------------------------------------------------------------------------------- /doc/README.md: -------------------------------------------------------------------------------- 1 | ### React UI 文档 2 | 3 | webpage为hexo构建[官方文档](https://hexo.io/) 4 | 5 | ### 开始 6 | ``` 7 | $ npm install -g hexo-cli 8 | $ npm install 9 | $ hexo server 10 | ``` 11 | 12 | ### 如何编辑 13 | react-ui 文档统一编辑在`doc/source/api/index.md`,语法为markdown 14 | 15 | ### 左侧菜单介绍 16 | 左侧菜单只接收h2,h3如下,其中h3为上一个h2的子菜单 17 | ``` 18 | ## react-ui 介绍 19 | ## 基本样式 20 | ### 样式统一 21 | ### 基础设置 22 | ### 文字排版 23 | ## 布局相关 24 | ## 网格 Grid 25 | ### 简介 26 | ## 按钮 Button 27 | ### 尺寸 28 | ### 激活状态 29 | ### 禁用状态 30 | ``` 31 |  32 | 33 | -------------------------------------------------------------------------------- /doc/_api/compontents/button.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Button 按钮 3 | type: api 4 | order: 2 5 | --- 6 | {% raw %} {% endraw %} 7 | 8 | ## 默认(default) 9 |
10 | *源码* 11 | ``` js 12 | 13 | 14 | 15 | 16 | 17 | ``` 18 | 19 | ## 空 20 | 21 | *源码* 22 | ``` js 23 | 24 | ] 25 | ``` 26 | 27 | ## 图标 28 | 29 | *源码* 30 | ``` js 31 | 32 | 33 | 34 | 35 | ``` 36 | 37 | ## 块 38 | 39 | *源码* 40 | 41 | ``` js 42 | 43 | 44 | ``` 45 | 46 | ## 禁用 47 | 48 | *源码* 49 | ``` js 50 | 51 | 52 | ``` 53 | 54 | ## 小尺寸 55 | 56 | *源码* 57 | ``` js 58 | 59 | 60 | ``` 61 | 62 | ## API 63 | 通过设置 Button 的属性来产生不同的按钮样式 64 | 属性如下: 65 | 66 | | 属性 | 说明 | 类型 | 默认值 | 67 | | ---- | ---- | ---- | ---- | 68 | | type | 可选值为:default、info、primary、warn、danger | string | default(不填也为default)| 69 | | icon | 设置按钮的图标 | string | - | 70 | | block、disabled、small、plain | 设置按钮是否为块级、禁用、小按钮 | string或空 | 增加属性时有效 | 71 | 72 | -------------------------------------------------------------------------------- /doc/_api/compontents/grid.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Grid 栅格 3 | type: api 4 | order: 4 5 | --- 6 | {% raw %} {% endraw %} 7 | ## flex-等分 8 | 9 | *源码* 10 | ``` html 11 |
|
|
More info: Writing
42 |
|
|
More info: Server
44 |
|
|
More info: Generating
46 |
|
|
More info: Deployment
48 | ]]>18 | <%= theme.excerpt_link %> 19 |
20 | <% } %> 21 | <% } else { %> 22 | <%- post.content %> 23 | <% } %> 24 |
9 |
10 |
11 |
12 |
{subTitle}
15 |28 | 搜索内容为:{this.state.changeDemoValue} 29 |
30 |35 | 搜索内容为:{this.state.searchDemoValue} 36 |
: 37 | null 38 | } 39 | 40 |{children}
34 |