├── example
├── pages
│ ├── Input.vue
│ ├── List.vue
│ ├── Switch.vue
│ ├── common
│ │ ├── CodeBlock.vue
│ │ ├── Highlight.vue
│ │ └── ApiBlock.vue
│ ├── Index.vue
│ ├── Button.vue
│ ├── Radio.vue
│ ├── Picker.vue
│ ├── Checkbox.vue
│ ├── Tabs.vue
│ ├── api
│ │ └── index.js
│ ├── Modal.vue
│ └── Ico.vue
├── demo
│ ├── index.html
│ ├── 8.3b8e786e287e4ed0981a.js
│ ├── 8.2be9f3aa854b1f8a2a63.js
│ └── example.min.css
├── index.html
├── main.js
├── router
│ └── index.js
├── assets
│ └── js
│ │ └── highlight.pack.js
└── App.vue
├── src
├── components
│ ├── Flex
│ │ ├── index.js
│ │ └── Flex.vue
│ ├── Grid
│ │ ├── index.js
│ │ └── Grid.vue
│ ├── Ico
│ │ ├── index.js
│ │ └── Ico.vue
│ ├── List
│ │ ├── index.js
│ │ └── List.vue
│ ├── Tabs
│ │ ├── index.js
│ │ └── Tabs.vue
│ ├── Input
│ │ ├── index.js
│ │ └── Input.vue
│ ├── Modal
│ │ ├── index.js
│ │ └── Modal.vue
│ ├── Radio
│ │ ├── index.js
│ │ └── Radio.vue
│ ├── Notify
│ │ ├── index.js
│ │ └── Notify.vue
│ ├── Picker
│ │ ├── index.js
│ │ └── Picker.vue
│ ├── Swiper
│ │ ├── index.js
│ │ └── Swiper.vue
│ ├── Switch
│ │ ├── index.js
│ │ └── Switch.vue
│ ├── Checkbox
│ │ ├── index.js
│ │ └── Checkbox.vue
│ └── Button
│ │ ├── index.js
│ │ ├── ButtonGroup.vue
│ │ └── Button.vue
├── utils
│ └── index.js
├── index.js
└── assets
│ └── css
│ ├── config.styl
│ └── base.styl
├── config
├── prod.env.js
├── dev.env.js
└── index.js
├── README.md
├── .editorconfig
├── .gitignore
├── .postcssrc.js
├── .babelrc
└── package.json
/example/pages/Input.vue:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/example/pages/List.vue:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/components/Flex/index.js:
--------------------------------------------------------------------------------
1 | import Flex from './Flex.vue';
2 | export default Flex;
--------------------------------------------------------------------------------
/src/components/Grid/index.js:
--------------------------------------------------------------------------------
1 | import Grid from './Grid.vue';
2 | export default Grid;
--------------------------------------------------------------------------------
/src/components/Ico/index.js:
--------------------------------------------------------------------------------
1 | import Ico from './Ico.vue';
2 | export default Ico;
--------------------------------------------------------------------------------
/src/components/List/index.js:
--------------------------------------------------------------------------------
1 | import List from './List.vue';
2 | export default List;
--------------------------------------------------------------------------------
/src/components/Tabs/index.js:
--------------------------------------------------------------------------------
1 | import Tabs from './Tabs.vue';
2 | export default Tabs;
--------------------------------------------------------------------------------
/src/components/Input/index.js:
--------------------------------------------------------------------------------
1 | import Input from './Input.vue';
2 | export default Input;
--------------------------------------------------------------------------------
/src/components/Modal/index.js:
--------------------------------------------------------------------------------
1 | import Modal from './Modal.vue';
2 | export default Modal;
--------------------------------------------------------------------------------
/src/components/Radio/index.js:
--------------------------------------------------------------------------------
1 | import Radio from './Radio.vue';
2 | export default Radio;
--------------------------------------------------------------------------------
/src/components/Notify/index.js:
--------------------------------------------------------------------------------
1 | import Notify from './Notify.vue';
2 | export default Notify;
--------------------------------------------------------------------------------
/src/components/Picker/index.js:
--------------------------------------------------------------------------------
1 | import Picker from './Picker.vue';
2 | export default Picker;
--------------------------------------------------------------------------------
/src/components/Swiper/index.js:
--------------------------------------------------------------------------------
1 | import Swiper from './Swiper.vue';
2 | export default Swiper;
--------------------------------------------------------------------------------
/src/components/Switch/index.js:
--------------------------------------------------------------------------------
1 | import Switch from './Switch.vue';
2 | export default Switch;
--------------------------------------------------------------------------------
/config/prod.env.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | module.exports = {
3 | NODE_ENV: '"production"'
4 | }
5 |
--------------------------------------------------------------------------------
/src/components/Checkbox/index.js:
--------------------------------------------------------------------------------
1 | import Checkbox from './Checkbox.vue';
2 | export default Checkbox;
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # pugde-ui
2 | > vue2 + webpack3 轻便的移动端脚手架
3 |
4 | ### [示例 Example](https://fanjyy.github.io/pugde-ui/example/demo/)
5 |
--------------------------------------------------------------------------------
/src/components/Button/index.js:
--------------------------------------------------------------------------------
1 | import Button from './Button.vue';
2 | import ButtonGroup from './ButtonGroup.vue';
3 | Button.Group = ButtonGroup;
4 | export default Button;
--------------------------------------------------------------------------------
/config/dev.env.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const merge = require('webpack-merge')
3 | const prodEnv = require('./prod.env')
4 |
5 | module.exports = merge(prodEnv, {
6 | NODE_ENV: '"development"'
7 | })
8 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | charset = utf-8
5 | indent_style = space
6 | indent_size = 2
7 | end_of_line = lf
8 | insert_final_newline = true
9 | trim_trailing_whitespace = true
10 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules/
3 | dist/
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 |
8 | # Editor directories and files
9 | .idea
10 | .vscode
11 | *.suo
12 | *.ntvs*
13 | *.njsproj
14 | *.sln
15 |
--------------------------------------------------------------------------------
/.postcssrc.js:
--------------------------------------------------------------------------------
1 | // https://github.com/michael-ciniawsky/postcss-load-config
2 |
3 | module.exports = {
4 | "plugins": {
5 | // to edit target browsers: use "browserslist" field in package.json
6 | "autoprefixer": {}
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/src/utils/index.js:
--------------------------------------------------------------------------------
1 | export const prefixCls = 'PG__'
2 | export function cls(clsName){
3 | return prefixCls + clsName;
4 | }
5 | export function array_rand(items){
6 | return items[Math.random() * items.length | 0];
7 | }
8 | export function size(val){
9 | return typeof(val) == 'number' ? val+'px' : val
10 | }
--------------------------------------------------------------------------------
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | ["env", {
4 | "modules": false,
5 | "targets": {
6 | "browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
7 | }
8 | }],
9 | "stage-2"
10 | ],
11 | "plugins": ["transform-runtime"],
12 | "env": {
13 | "test": {
14 | "presets": ["env", "stage-2"],
15 | "plugins": ["istanbul"]
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/example/demo/index.html:
--------------------------------------------------------------------------------
1 |
Pudge
--------------------------------------------------------------------------------
/example/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Pudge
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/example/main.js:
--------------------------------------------------------------------------------
1 | // The Vue build version to load with the `import` command
2 | // (runtime-only or standalone) has been set in webpack.base.conf with an alias.
3 | import Vue from 'vue'
4 | import App from './App'
5 | import router from './router'
6 |
7 | /**
8 | import axios from 'axios'
9 | Vue.prototype.$http = axios
10 | */
11 | Vue.config.productionTip = false
12 |
13 | /* eslint-disable no-new */
14 | new Vue({
15 | el: '#app',
16 | template: '',
17 | components: { App },
18 | router
19 | })
20 |
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import "css/base"
2 | import Notify from 'components/Notify'
3 | import Vinput from 'components/Input'
4 | import Tabs from 'components/Tabs'
5 | import Picker from 'components/Picker'
6 | import Radio from 'components/Radio'
7 | import Checkbox from 'components/Checkbox'
8 | import Modal from 'components/Modal'
9 | import List from 'components/List'
10 | import ISwitch from 'components/Switch'
11 | import Swiper from 'components/Swiper'
12 |
13 |
14 | const pudge = {
15 | Notify,
16 | Vinput,
17 | Tabs,
18 | Picker,
19 | Radio,
20 | Checkbox,
21 | Modal,
22 | List,
23 | ISwitch,
24 | Swiper
25 | };
26 |
27 | Object.keys(pudge).forEach(key => {
28 | Vue.component(key, pudge[key]);
29 | });
30 |
--------------------------------------------------------------------------------
/src/components/Ico/Ico.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
39 |
40 |
--------------------------------------------------------------------------------
/example/pages/Switch.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 开关
5 | 默认为 center
6 |
9 |
12 |
13 |
14 |
15 |
16 |
37 |
38 |
40 |
--------------------------------------------------------------------------------
/src/assets/css/config.styl:
--------------------------------------------------------------------------------
1 | //颜色预设值
2 | color-primary = #20a0ff;
3 | color-success = #13ce66;
4 | color-warning = #f7ba2a;
5 | color-error = #ff4949;
6 | color-info = #50BFFF;
7 | color-light = rgba(color-primary, 0.4)
8 | //常用于 active 背景
9 | color-ignore = #C0CCDA
10 | color-gray = #eee
11 |
12 |
13 | //过渡动画预设贝塞尔曲线
14 | bezier-default = cubic-bezier(0.075, 0.82, 0.165, 1);
15 |
16 | cls(clsName)
17 | PG__ + clsName
18 | //CSS 属性重定义
19 | transition(property,duration = 0.8s,function = bezier-default)
20 | transition arguments
21 | -webkit-transition arguments
22 |
23 | transform()
24 | transform arguments
25 | -webkit-transform arguments
26 | text-overflow(width)
27 | width width
28 | overflow hidden
29 | text-overflow ellipsis
30 | white-space nowrap
31 |
32 | -pos(type, args)
33 | i = 0
34 | position: unquote(type)
35 | if args == 'center'
36 | top 50%
37 | left 50%
38 | transform translate(-50%, -50%)
39 | else
40 | {args[i]}: args[i + 1] is a 'unit' ? args[i += 1] : 0
41 | {args[i += 1]}: args[i + 1] is a 'unit' ? args[i += 1] : 0
42 |
43 | absolute()
44 | -pos('absolute', arguments)
45 |
46 | fixed()
47 | -pos('fixed', arguments)
48 |
49 | relative()
50 | -pos('relative', arguments)
--------------------------------------------------------------------------------
/example/router/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import VueRouter from 'vue-router'
3 |
4 | Vue.use(VueRouter)
5 |
6 | export default new VueRouter({
7 | routes:[{
8 | path:'/',
9 | name:'index',
10 | component:resolve => require(["../pages/Index"], resolve)
11 | },{
12 | path:'/tabs',
13 | name:'tabsIndex',
14 | component:resolve => require(["../pages/Tabs"], resolve)
15 | },{
16 | path:'/checkbox',
17 | name:'checkboxIndex',
18 | component:resolve => require(["../pages/Checkbox"], resolve)
19 | },{
20 | path:'/radio',
21 | name:'radioIndex',
22 | component:resolve => require(["../pages/Radio"], resolve)
23 | },{
24 | path:'/modal',
25 | name:'modalIndex',
26 | component:resolve => require(["../pages/Modal"], resolve)
27 | },{
28 | path:'/ico',
29 | name:'icoIndex',
30 | component:resolve => require(["../pages/Ico"], resolve)
31 | },{
32 | path:'/button',
33 | name:'buttonIndex',
34 | component:resolve => require(["../pages/Button"], resolve)
35 | },{
36 | path:'/switch',
37 | name:'switchIndex',
38 | component:resolve => require(["../pages/Switch"], resolve)
39 | },{
40 | path:'/picker',
41 | name:'pickerIndex',
42 | component:resolve => require(["../pages/Picker"], resolve)
43 | }]
44 | });
--------------------------------------------------------------------------------
/example/pages/common/CodeBlock.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
45 |
--------------------------------------------------------------------------------
/src/components/Flex/Flex.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
52 |
53 |
--------------------------------------------------------------------------------
/config/index.js:
--------------------------------------------------------------------------------
1 |
2 | 'use strict'
3 | // Template version: 1.1.1
4 | // see http://vuejs-templates.github.io/webpack for documentation.
5 |
6 | const path = require('path')
7 |
8 | module.exports = {
9 | build: {
10 | env: require('./prod.env'),
11 | index: path.resolve(__dirname, '../dist/index.html'),
12 | assetsRoot: path.resolve(__dirname, '../dist'),
13 | assetsSubDirectory: '',
14 | assetsPublicPath: '/',
15 | productionSourceMap: false,
16 | // Gzip off by default as many popular static hosts such as
17 | // Surge or Netlify already gzip all static assets for you.
18 | // Before setting to `true`, make sure to:
19 | // npm install --save-dev compression-webpack-plugin
20 | productionGzip: false,
21 | productionGzipExtensions: ['js', 'css'],
22 | // Run the build command with an extra argument to
23 | // View the bundle analyzer report after build finishes:
24 | // `npm run build --report`
25 | // Set to `true` or `false` to always turn it on or off
26 | bundleAnalyzerReport: process.env.npm_config_report
27 | },
28 | dev: {
29 | env: require('./dev.env'),
30 | port: process.env.PORT || 8080,
31 | autoOpenBrowser: true,
32 | assetsSubDirectory: '',
33 | assetsPublicPath: '/',
34 | proxyTable: {},
35 | // CSS Sourcemaps off by default because relative paths are "buggy"
36 | // with this option, according to the CSS-Loader README
37 | // (https://github.com/webpack/css-loader#sourcemaps)
38 | // In our experience, they generally work as expected,
39 | // just be aware of this issue when enabling this option.
40 | cssSourceMap: false
41 | },
42 | exampleBuild: {
43 | index: path.resolve(__dirname, '../example/demo/index.html'),
44 | env: require('./prod.env'),
45 | entry: {
46 | app: './example/main.js'
47 | },
48 | assetsRoot: path.resolve(__dirname, '../example/demo'),
49 | assetsSubDirectory: '',
50 | assetsPublicPath:'',
51 | productionSourceMap:false
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/example/pages/common/Highlight.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
29 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "vue-pugde",
3 | "version": "1.0.0",
4 | "description": "轻量的移动端 webpack3 + vue2 组件库",
5 | "author": "Fan",
6 | "private": true,
7 | "scripts": {
8 | "build-example": "node build/example/build.js",
9 | "dev": "node build/dev-server.js",
10 | "start": "npm run dev",
11 | "build": "node build/build.js"
12 | },
13 | "dependencies": {
14 | "vue": "^2.4.2"
15 | },
16 | "devDependencies": {
17 | "autoprefixer": "^7.1.2",
18 | "axios": "^0.16.2",
19 | "babel-core": "^6.22.1",
20 | "babel-loader": "^7.1.1",
21 | "babel-plugin-transform-runtime": "^6.22.0",
22 | "babel-preset-env": "^1.3.2",
23 | "babel-preset-stage-2": "^6.22.0",
24 | "babel-register": "^6.22.0",
25 | "chalk": "^2.0.1",
26 | "connect-history-api-fallback": "^1.3.0",
27 | "copy-webpack-plugin": "^4.0.1",
28 | "css-loader": "^0.28.0",
29 | "eventsource-polyfill": "^0.9.6",
30 | "express": "^4.14.1",
31 | "extract-text-webpack-plugin": "^3.0.0",
32 | "file-loader": "^1.1.4",
33 | "friendly-errors-webpack-plugin": "^1.6.1",
34 | "html-webpack-plugin": "^2.30.1",
35 | "http-proxy-middleware": "^0.17.3",
36 | "opn": "^5.1.0",
37 | "optimize-css-assets-webpack-plugin": "^3.2.0",
38 | "ora": "^1.2.0",
39 | "portfinder": "^1.0.13",
40 | "rimraf": "^2.6.0",
41 | "semver": "^5.3.0",
42 | "shelljs": "^0.7.6",
43 | "stylus": "^0.54.5",
44 | "stylus-loader": "^2.5.0",
45 | "url-loader": "^0.5.8",
46 | "vue-loader": "^13.0.4",
47 | "vue-style-loader": "^3.0.1",
48 | "vue-template-compiler": "^2.4.2",
49 | "vue-router": "^3.0.1",
50 | "webpack": "^3.6.0",
51 | "webpack-bundle-analyzer": "^2.9.0",
52 | "webpack-dev-middleware": "^1.12.0",
53 | "webpack-hot-middleware": "^2.18.2",
54 | "webpack-merge": "^4.1.0"
55 | },
56 | "engines": {
57 | "node": ">= 4.0.0",
58 | "npm": ">= 3.0.0"
59 | },
60 | "browserslist": [
61 | "> 1%",
62 | "last 2 versions",
63 | "not ie <= 8"
64 | ]
65 | }
66 |
--------------------------------------------------------------------------------
/example/pages/Index.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
pudge
5 |
基于 VUE 2.0 的移动端框架
6 |
7 |
23 |
24 |
25 |
26 |
27 |
38 |
39 |
58 |
--------------------------------------------------------------------------------
/src/components/Radio/Radio.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
17 |
18 |
19 |
67 |
68 |
87 |
88 |
--------------------------------------------------------------------------------
/src/components/Checkbox/Checkbox.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
17 |
18 |
19 |
72 |
73 |
92 |
93 |
--------------------------------------------------------------------------------
/src/components/Grid/Grid.vue:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
84 |
85 |
--------------------------------------------------------------------------------
/src/components/Notify/Notify.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
{{title}}
7 |
{{content}}
8 |
9 |
10 |
11 |
12 |
13 |
66 |
67 |
68 |
137 |
--------------------------------------------------------------------------------
/example/pages/common/ApiBlock.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
{{to}} Props
5 |
23 |
24 |
25 |
{{to}} Events
26 |
40 |
41 |
42 |
{{to}} Slot
43 |
53 |
54 |
55 |
56 |
79 |
--------------------------------------------------------------------------------
/src/components/Button/ButtonGroup.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
76 |
77 |
118 |
119 |
--------------------------------------------------------------------------------
/src/components/Switch/Switch.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
10 |
11 |
12 |
83 |
84 |
--------------------------------------------------------------------------------
/example/pages/Button.vue:
--------------------------------------------------------------------------------
1 |
2 |
97 |
98 |
117 |
118 |
127 |
--------------------------------------------------------------------------------
/example/pages/Radio.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
9 | 基础示例
10 | 使用 v-model 双向绑定数据。
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
33 |
34 |
35 |
36 | 默认选中
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
57 |
58 |
59 |
60 | 禁用某项
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
75 |
76 |
77 |
78 | 自定义图标
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
93 |
94 |
95 |
96 | 在左侧显示图标
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
109 |
110 |
111 |
112 |
113 |
114 |
141 |
142 |
145 |
--------------------------------------------------------------------------------
/example/pages/Picker.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
切换 Picker 状态 {{pickerShow}}
9 |
选中值:{{ JSON.stringify(pickerSelect) }}
10 |
11 |
12 |
138 |
139 |
141 |
--------------------------------------------------------------------------------
/example/pages/Checkbox.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
Checkbox
5 |
多选组件
6 |
7 |
8 |
9 | 基础示例
10 | 使用 v-model 双向绑定数据。
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
33 |
34 |
35 |
36 | 默认选中
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
57 |
58 |
59 |
60 | 禁用某项
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
75 |
76 |
77 |
78 | 自定义图标
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
93 |
94 |
95 |
96 | 在左侧显示图标
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
109 |
110 |
111 |
112 |
113 |
114 |
141 |
142 |
145 |
--------------------------------------------------------------------------------
/src/components/Input/Input.vue:
--------------------------------------------------------------------------------
1 |
2 |
25 |
26 |
140 |
--------------------------------------------------------------------------------
/src/components/Button/Button.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
99 |
100 |
177 |
178 |
--------------------------------------------------------------------------------
/example/pages/Tabs.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
9 | 圆角
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
24 |
25 |
26 |
27 |
28 | 下划线
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
41 |
42 |
43 |
44 |
45 | 卡片
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
58 |
59 |
60 |
61 | 突出图标
62 | 当 type = line / card 时有效。
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
75 |
76 |
77 |
78 | 超出滚动
79 | 当 type = line / card 时有效。
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
96 |
97 |
98 |
99 |
100 |
101 |
128 |
129 |
142 |
--------------------------------------------------------------------------------
/src/components/Tabs/Tabs.vue:
--------------------------------------------------------------------------------
1 |
2 |
16 |
17 |
102 |
--------------------------------------------------------------------------------
/src/components/List/List.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | 加载中..
7 |
8 |
9 | 无数据
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | — 暂无数据 —
21 | 重新加载
22 |
23 |
24 |
25 |
26 |
129 |
--------------------------------------------------------------------------------
/src/components/Swiper/Swiper.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
135 |
136 |
--------------------------------------------------------------------------------
/src/components/Picker/Picker.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
20 |
21 |
22 |
154 |
--------------------------------------------------------------------------------
/src/components/Modal/Modal.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
{{title}}
7 |
8 |
9 |
10 |
11 |
12 |
13 | {{cancelTxt}}
14 |
15 |
16 | {{okTxt}}
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
134 |
--------------------------------------------------------------------------------
/example/pages/api/index.js:
--------------------------------------------------------------------------------
1 | export default {
2 | Tabs:{
3 | props:[{
4 | name:'type',
5 | intro:'选项卡基本样式,可选值 line / card / radius',
6 | type:'String',
7 | default:'line'
8 | },{
9 | name:'not-animated',
10 | intro:'关闭页面切换动画',
11 | type:'boolean',
12 | default:'false'
13 | },{
14 | name:'fixed',
15 | intro:'是否将导航悬浮在顶部并跟随屏幕滚动',
16 | type:'boolean',
17 | default:'false'
18 | },{
19 | name:'scroll',
20 | intro:'当选项卡过多时,是否允许菜单滚动',
21 | type:'boolean',
22 | default:'false'
23 | },{
24 | name:'horizontal',
25 | intro:'是否纵向排列图标,只支持 line 和 card 类型的导航',
26 | type:'boolean',
27 | default:'false'
28 | }],
29 | events:[{
30 | name:'change',
31 | intro:'切换选项卡时触发',
32 | callback_intro:'index'
33 | }],
34 | slot:[{
35 | name:'label',
36 | intro:'选项卡标题'
37 | },{
38 | name:'ico',
39 | intro:'图标 class'
40 | }]
41 | },
42 | Checkbox:{
43 | props:[{
44 | name:'v-model',
45 | intro:'选中的值',
46 | type:'array',
47 | default:'[]'
48 | },{
49 | name:'left-ico',
50 | intro:'在左侧显示图标',
51 | type:'boolean',
52 | default:'false'
53 | },{
54 | name:'ico',
55 | intro:'使用的图标,在 slot 上可以单独定义',
56 | type:'string',
57 | default:'success-fill'
58 | }],
59 | events:[{
60 | name:'change',
61 | intro:'改变选中项时触发',
62 | callback_intro:'val'
63 | }],
64 | slot:[{
65 | name:'label',
66 | intro:'选项卡标题'
67 | },{
68 | name:'ico',
69 | intro:'图标 class'
70 | },{
71 | name:'disabled',
72 | intro:'是否禁用选项'
73 | }]
74 | },
75 | Radio:{
76 | props:[{
77 | name:'v-model',
78 | intro:'选中的值',
79 | type:'array',
80 | default:'[]'
81 | },{
82 | name:'left-ico',
83 | intro:'在左侧显示图标',
84 | type:'boolean',
85 | default:'false'
86 | },{
87 | name:'ico',
88 | intro:'使用的图标,在 slot 上可以单独定义',
89 | type:'string',
90 | default:'success-fill'
91 | }],
92 | events:[{
93 | name:'change',
94 | intro:'改变选中项时触发',
95 | callback_intro:'val'
96 | }],
97 | slot:[{
98 | name:'label',
99 | intro:'选项卡标题'
100 | },{
101 | name:'ico',
102 | intro:'图标 class'
103 | },{
104 | name:'disabled',
105 | intro:'是否禁用选项'
106 | }]
107 | },
108 | Modal:{
109 | props:[{
110 | name:'v-model',
111 | intro:'是否显示弹窗',
112 | type:'boolean',
113 | default:'false'
114 | },{
115 | name:'title',
116 | intro:'弹窗标题',
117 | type:'string',
118 | default:''
119 | },{
120 | name:'type',
121 | intro:'弹窗类型,可选值 alert confirm panel',
122 | type:'string',
123 | default:'alert'
124 | },{
125 | name:'position',
126 | intro:'显示的位置,可选值 top bottom left right center full',
127 | type:'string',
128 | default:'center'
129 | },{
130 | name:'cancel-ico',
131 | intro:'取消按钮的图标',
132 | type:'string',
133 | default:''
134 | },{
135 | name:'cancel-txt',
136 | intro:'取消按钮的文字',
137 | type:'string',
138 | default:'取消'
139 | },{
140 | name:'ok-ico',
141 | intro:'确定按钮的图标',
142 | type:'string',
143 | default:''
144 | },{
145 | name:'ok-txt',
146 | intro:'确定按钮的文字',
147 | type:'string',
148 | default:'确定'
149 | },{
150 | name:'shade-color',
151 | intro:'遮罩的颜色',
152 | type:'string',
153 | default:'rgba(0,0,0,.8)'
154 | },{
155 | name:'shade-close',
156 | intro:'点击遮罩是否关闭弹窗',
157 | type:'boolean',
158 | default:'true'
159 | },{
160 | name:'auto-close',
161 | intro:'自动关闭毫秒',
162 | type:'number',
163 | default:'0'
164 | }],
165 | events:[{
166 | name:'close',
167 | intro:'弹窗关闭时触发',
168 | callback_intro:''
169 | }],
170 | slot:[{
171 | name:'* default',
172 | intro:'弹窗内容'
173 | }]
174 | },
175 | Button:{
176 | props:[{
177 | name:'type',
178 | intro:'按钮类型 primary info success warning error',
179 | type:'string',
180 | default:'primary'
181 | },{
182 | name:'mini',
183 | intro:'小号按钮',
184 | type:'boolean',
185 | default:'false'
186 | },{
187 | name:'plain',
188 | intro:'线条按钮',
189 | type:'boolean',
190 | default:'false'
191 | },{
192 | name:'inline',
193 | intro:'内联按钮 display:inline-block',
194 | type:'boolean',
195 | default:'false'
196 | },{
197 | name:'disabled',
198 | intro:'禁用按钮',
199 | type:'boolean',
200 | default:'false'
201 | },{
202 | name:'loading',
203 | intro:'加载状态的按钮',
204 | type:'boolean',
205 | default:'false'
206 | },{
207 | name:'stiff',
208 | intro:'直角按钮',
209 | type:'boolean',
210 | default:'false'
211 | },{
212 | name:'ico',
213 | intro:'图标 class',
214 | type:'boolean',
215 | default:'false'
216 | },{
217 | name:'margin',
218 | intro:'按钮边距',
219 | type:'string|number',
220 | default:''
221 | }],
222 | slot:[{
223 | name:'* default',
224 | intro:'按钮文字'
225 | }]
226 | },
227 | ButtonGroup:{
228 | props:[{
229 | name:'vertical',
230 | intro:'将按钮组竖向排列',
231 | type:'boolean',
232 | default:'false'
233 | },{
234 | name:'说明',
235 | intro:'可以为按钮组内的按钮批量定义这些属性
type
mini
plain
stiff
margin
disabled',
236 | }]
237 | },
238 | Switch:{
239 | props:[{
240 | name:'v-model',
241 | intro:'默认值',
242 | type:'String Boolean Number',
243 | default:'false'
244 | },{
245 | name:'label',
246 | intro:'标题',
247 | default:''
248 | },{
249 | name:'ico',
250 | intro:'标题图标',
251 | default:''
252 | },{
253 | name:'true',
254 | intro:'选中时的值',
255 | type:'String Boolean Number',
256 | default:'true'
257 | },{
258 | name:'false',
259 | intro:'未选中时的值',
260 | type:'String Boolean Number',
261 | default:'false'
262 | },{
263 | name:'disabled',
264 | intro:'禁用',
265 | type:'Boolean',
266 | default:'false'
267 | }]
268 | },
269 |
270 | }
--------------------------------------------------------------------------------
/example/assets/js/highlight.pack.js:
--------------------------------------------------------------------------------
1 | /*! highlight.js v9.12.0 | BSD3 License | git.io/hljslicense */
2 | !function(e){var n="object"==typeof window&&window||"object"==typeof self&&self;"undefined"!=typeof exports?e(exports):n&&(n.hljs=e({}),"function"==typeof define&&define.amd&&define([],function(){return n.hljs}))}(function(e){function n(e){return e.replace(/&/g,"&").replace(//g,">")}function t(e){return e.nodeName.toLowerCase()}function r(e,n){var t=e&&e.exec(n);return t&&0===t.index}function a(e){return k.test(e)}function i(e){var n,t,r,i,o=e.className+" ";if(o+=e.parentNode?e.parentNode.className:"",t=B.exec(o))return w(t[1])?t[1]:"no-highlight";for(o=o.split(/\s+/),n=0,r=o.length;r>n;n++)if(i=o[n],a(i)||w(i))return i}function o(e){var n,t={},r=Array.prototype.slice.call(arguments,1);for(n in e)t[n]=e[n];return r.forEach(function(e){for(n in e)t[n]=e[n]}),t}function u(e){var n=[];return function r(e,a){for(var i=e.firstChild;i;i=i.nextSibling)3===i.nodeType?a+=i.nodeValue.length:1===i.nodeType&&(n.push({event:"start",offset:a,node:i}),a=r(i,a),t(i).match(/br|hr|img|input/)||n.push({event:"stop",offset:a,node:i}));return a}(e,0),n}function c(e,r,a){function i(){return e.length&&r.length?e[0].offset!==r[0].offset?e[0].offset"}function u(e){s+=""+t(e)+">"}function c(e){("start"===e.event?o:u)(e.node)}for(var l=0,s="",f=[];e.length||r.length;){var g=i();if(s+=n(a.substring(l,g[0].offset)),l=g[0].offset,g===e){f.reverse().forEach(u);do c(g.splice(0,1)[0]),g=i();while(g===e&&g.length&&g[0].offset===l);f.reverse().forEach(o)}else"start"===g[0].event?f.push(g[0].node):f.pop(),c(g.splice(0,1)[0])}return s+n(a.substr(l))}function l(e){return e.v&&!e.cached_variants&&(e.cached_variants=e.v.map(function(n){return o(e,{v:null},n)})),e.cached_variants||e.eW&&[o(e)]||[e]}function s(e){function n(e){return e&&e.source||e}function t(t,r){return new RegExp(n(t),"m"+(e.cI?"i":"")+(r?"g":""))}function r(a,i){if(!a.compiled){if(a.compiled=!0,a.k=a.k||a.bK,a.k){var o={},u=function(n,t){e.cI&&(t=t.toLowerCase()),t.split(" ").forEach(function(e){var t=e.split("|");o[t[0]]=[n,t[1]?Number(t[1]):1]})};"string"==typeof a.k?u("keyword",a.k):x(a.k).forEach(function(e){u(e,a.k[e])}),a.k=o}a.lR=t(a.l||/\w+/,!0),i&&(a.bK&&(a.b="\\b("+a.bK.split(" ").join("|")+")\\b"),a.b||(a.b=/\B|\b/),a.bR=t(a.b),a.e||a.eW||(a.e=/\B|\b/),a.e&&(a.eR=t(a.e)),a.tE=n(a.e)||"",a.eW&&i.tE&&(a.tE+=(a.e?"|":"")+i.tE)),a.i&&(a.iR=t(a.i)),null==a.r&&(a.r=1),a.c||(a.c=[]),a.c=Array.prototype.concat.apply([],a.c.map(function(e){return l("self"===e?a:e)})),a.c.forEach(function(e){r(e,a)}),a.starts&&r(a.starts,i);var c=a.c.map(function(e){return e.bK?"\\.?("+e.b+")\\.?":e.b}).concat([a.tE,a.i]).map(n).filter(Boolean);a.t=c.length?t(c.join("|"),!0):{exec:function(){return null}}}}r(e)}function f(e,t,a,i){function o(e,n){var t,a;for(t=0,a=n.c.length;a>t;t++)if(r(n.c[t].bR,e))return n.c[t]}function u(e,n){if(r(e.eR,n)){for(;e.endsParent&&e.parent;)e=e.parent;return e}return e.eW?u(e.parent,n):void 0}function c(e,n){return!a&&r(n.iR,e)}function l(e,n){var t=N.cI?n[0].toLowerCase():n[0];return e.k.hasOwnProperty(t)&&e.k[t]}function p(e,n,t,r){var a=r?"":I.classPrefix,i='',i+n+o}function h(){var e,t,r,a;if(!E.k)return n(k);for(a="",t=0,E.lR.lastIndex=0,r=E.lR.exec(k);r;)a+=n(k.substring(t,r.index)),e=l(E,r),e?(B+=e[1],a+=p(e[0],n(r[0]))):a+=n(r[0]),t=E.lR.lastIndex,r=E.lR.exec(k);return a+n(k.substr(t))}function d(){var e="string"==typeof E.sL;if(e&&!y[E.sL])return n(k);var t=e?f(E.sL,k,!0,x[E.sL]):g(k,E.sL.length?E.sL:void 0);return E.r>0&&(B+=t.r),e&&(x[E.sL]=t.top),p(t.language,t.value,!1,!0)}function b(){L+=null!=E.sL?d():h(),k=""}function v(e){L+=e.cN?p(e.cN,"",!0):"",E=Object.create(e,{parent:{value:E}})}function m(e,n){if(k+=e,null==n)return b(),0;var t=o(n,E);if(t)return t.skip?k+=n:(t.eB&&(k+=n),b(),t.rB||t.eB||(k=n)),v(t,n),t.rB?0:n.length;var r=u(E,n);if(r){var a=E;a.skip?k+=n:(a.rE||a.eE||(k+=n),b(),a.eE&&(k=n));do E.cN&&(L+=C),E.skip||(B+=E.r),E=E.parent;while(E!==r.parent);return r.starts&&v(r.starts,""),a.rE?0:n.length}if(c(n,E))throw new Error('Illegal lexeme "'+n+'" for mode "'+(E.cN||"")+'"');return k+=n,n.length||1}var N=w(e);if(!N)throw new Error('Unknown language: "'+e+'"');s(N);var R,E=i||N,x={},L="";for(R=E;R!==N;R=R.parent)R.cN&&(L=p(R.cN,"",!0)+L);var k="",B=0;try{for(var M,j,O=0;;){if(E.t.lastIndex=O,M=E.t.exec(t),!M)break;j=m(t.substring(O,M.index),M[0]),O=M.index+j}for(m(t.substr(O)),R=E;R.parent;R=R.parent)R.cN&&(L+=C);return{r:B,value:L,language:e,top:E}}catch(T){if(T.message&&-1!==T.message.indexOf("Illegal"))return{r:0,value:n(t)};throw T}}function g(e,t){t=t||I.languages||x(y);var r={r:0,value:n(e)},a=r;return t.filter(w).forEach(function(n){var t=f(n,e,!1);t.language=n,t.r>a.r&&(a=t),t.r>r.r&&(a=r,r=t)}),a.language&&(r.second_best=a),r}function p(e){return I.tabReplace||I.useBR?e.replace(M,function(e,n){return I.useBR&&"\n"===e?"
":I.tabReplace?n.replace(/\t/g,I.tabReplace):""}):e}function h(e,n,t){var r=n?L[n]:t,a=[e.trim()];return e.match(/\bhljs\b/)||a.push("hljs"),-1===e.indexOf(r)&&a.push(r),a.join(" ").trim()}function d(e){var n,t,r,o,l,s=i(e);a(s)||(I.useBR?(n=document.createElementNS("http://www.w3.org/1999/xhtml","div"),n.innerHTML=e.innerHTML.replace(/\n/g,"").replace(/
/g,"\n")):n=e,l=n.textContent,r=s?f(s,l,!0):g(l),t=u(n),t.length&&(o=document.createElementNS("http://www.w3.org/1999/xhtml","div"),o.innerHTML=r.value,r.value=c(t,u(o),l)),r.value=p(r.value),e.innerHTML=r.value,e.className=h(e.className,s,r.language),e.result={language:r.language,re:r.r},r.second_best&&(e.second_best={language:r.second_best.language,re:r.second_best.r}))}function b(e){I=o(I,e)}function v(){if(!v.called){v.called=!0;var e=document.querySelectorAll("pre code");E.forEach.call(e,d)}}function m(){addEventListener("DOMContentLoaded",v,!1),addEventListener("load",v,!1)}function N(n,t){var r=y[n]=t(e);r.aliases&&r.aliases.forEach(function(e){L[e]=n})}function R(){return x(y)}function w(e){return e=(e||"").toLowerCase(),y[e]||y[L[e]]}var E=[],x=Object.keys,y={},L={},k=/^(no-?highlight|plain|text)$/i,B=/\blang(?:uage)?-([\w-]+)\b/i,M=/((^(<[^>]+>|\t|)+|(?:\n)))/gm,C="",I={classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:void 0};return e.highlight=f,e.highlightAuto=g,e.fixMarkup=p,e.highlightBlock=d,e.configure=b,e.initHighlighting=v,e.initHighlightingOnLoad=m,e.registerLanguage=N,e.listLanguages=R,e.getLanguage=w,e.inherit=o,e.IR="[a-zA-Z]\\w*",e.UIR="[a-zA-Z_]\\w*",e.NR="\\b\\d+(\\.\\d+)?",e.CNR="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",e.BNR="\\b(0b[01]+)",e.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",e.BE={b:"\\\\[\\s\\S]",r:0},e.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[e.BE]},e.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[e.BE]},e.PWM={b:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},e.C=function(n,t,r){var a=e.inherit({cN:"comment",b:n,e:t,c:[]},r||{});return a.c.push(e.PWM),a.c.push({cN:"doctag",b:"(?:TODO|FIXME|NOTE|BUG|XXX):",r:0}),a},e.CLCM=e.C("//","$"),e.CBCM=e.C("/\\*","\\*/"),e.HCM=e.C("#","$"),e.NM={cN:"number",b:e.NR,r:0},e.CNM={cN:"number",b:e.CNR,r:0},e.BNM={cN:"number",b:e.BNR,r:0},e.CSSNM={cN:"number",b:e.NR+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",r:0},e.RM={cN:"regexp",b:/\//,e:/\/[gimuy]*/,i:/\n/,c:[e.BE,{b:/\[/,e:/\]/,r:0,c:[e.BE]}]},e.TM={cN:"title",b:e.IR,r:0},e.UTM={cN:"title",b:e.UIR,r:0},e.METHOD_GUARD={b:"\\.\\s*"+e.UIR,r:0},e});hljs.registerLanguage("css",function(e){var c="[a-zA-Z-][a-zA-Z0-9_-]*",t={b:/[A-Z\_\.\-]+\s*:/,rB:!0,e:";",eW:!0,c:[{cN:"attribute",b:/\S/,e:":",eE:!0,starts:{eW:!0,eE:!0,c:[{b:/[\w-]+\(/,rB:!0,c:[{cN:"built_in",b:/[\w-]+/},{b:/\(/,e:/\)/,c:[e.ASM,e.QSM]}]},e.CSSNM,e.QSM,e.ASM,e.CBCM,{cN:"number",b:"#[0-9A-Fa-f]+"},{cN:"meta",b:"!important"}]}}]};return{cI:!0,i:/[=\/|'\$]/,c:[e.CBCM,{cN:"selector-id",b:/#[A-Za-z0-9_-]+/},{cN:"selector-class",b:/\.[A-Za-z0-9_-]+/},{cN:"selector-attr",b:/\[/,e:/\]/,i:"$"},{cN:"selector-pseudo",b:/:(:)?[a-zA-Z0-9\_\-\+\(\)"'.]+/},{b:"@(font-face|page)",l:"[a-z-]+",k:"font-face page"},{b:"@",e:"[{;]",i:/:/,c:[{cN:"keyword",b:/\w+/},{b:/\s/,eW:!0,eE:!0,r:0,c:[e.ASM,e.QSM,e.CSSNM]}]},{cN:"selector-tag",b:c,r:0},{b:"{",e:"}",i:/\S/,c:[e.CBCM,t]}]}});hljs.registerLanguage("xml",function(s){var e="[A-Za-z0-9\\._:-]+",t={eW:!0,i:/,r:0,c:[{cN:"attr",b:e,r:0},{b:/=\s*/,r:0,c:[{cN:"string",endsParent:!0,v:[{b:/"/,e:/"/},{b:/'/,e:/'/},{b:/[^\s"'=<>`]+/}]}]}]};return{aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist"],cI:!0,c:[{cN:"meta",b:"",r:10,c:[{b:"\\[",e:"\\]"}]},s.C("",{r:10}),{b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{b:/<\?(php)?/,e:/\?>/,sL:"php",c:[{b:"/\\*",e:"\\*/",skip:!0}]},{cN:"tag",b:"",rE:!0,sL:["css","xml"]}},{cN:"tag",b:"",rE:!0,sL:["actionscript","javascript","handlebars","xml"]}},{cN:"meta",v:[{b:/<\?xml/,e:/\?>/,r:10},{b:/<\?\w+/,e:/\?>/}]},{cN:"tag",b:"?",e:"/?>",c:[{cN:"name",b:/[^\/><\s]+/,r:0},t]}]}});
--------------------------------------------------------------------------------
/example/pages/Modal.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | close
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
Modal
25 |
弹窗组件
26 |
27 |
28 |
29 | 基础示例
30 | 使用 v-model 控制是否显示
31 |
32 |
33 |
34 |
35 |
36 |
44 |
45 |
46 |
47 | 改变类型
48 |
49 | 默认为 alert,共有 3 个类型可以选择,它们的区别就是按钮的多少而已
50 |
51 |
52 |
53 |
54 |
55 |
56 |
61 |
62 |
63 |
64 | 改变位置
65 | 默认为 center
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
84 |
85 |
86 |
87 |
88 | 插入 Input
89 |
90 |
91 |
92 |
97 |
98 |
99 |
100 | 插入 Tabs
101 |
102 |
103 |
104 |
117 |
118 |
119 |
120 |
121 |
122 |
240 |
241 |
257 |
--------------------------------------------------------------------------------
/example/pages/Ico.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
10 |
11 |
12 |
切换 Picker 状态 {{pickerShow}}
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
295 |
296 |
298 |
--------------------------------------------------------------------------------
/example/demo/8.3b8e786e287e4ed0981a.js:
--------------------------------------------------------------------------------
1 | webpackJsonp([8],{"+E39":function(t,n,e){t.exports=!e("S82l")(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},"+ZMJ":function(t,n,e){var o=e("lOnJ");t.exports=function(t,n,e){if(o(t),void 0===n)return t;switch(e){case 1:return function(e){return t.call(n,e)};case 2:return function(e,o){return t.call(n,e,o)};case 3:return function(e,o,i){return t.call(n,e,o,i)}}return function(){return t.apply(n,arguments)}}},"0LRS":function(t,n,e){"use strict";var o=function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{attrs:{id:"index"}},[t._m(0),t._v(" "),e("ul",{staticClass:"menu"},[e("li",[e("router-link",{attrs:{to:"/tabs"}},[e("span",[t._v("选项卡 ")]),t._v("Tabs")])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/checkbox"}},[e("span",[t._v("多选框 ")]),t._v("Checkbox")])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/radio"}},[e("span",[t._v("单选框 ")]),t._v("Radio")])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/modal"}},[e("span",[t._v("弹窗 ")]),t._v("Modal")])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/ico"}},[e("span",[t._v("图标 ")]),t._v("Ico")])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/button"}},[e("span",[t._v("按钮 ")]),t._v("Button")])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/"}},[e("span",[t._v("分页 ")]),t._v("List "),e("small",[e("i",[t._v("todo")])])])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/"}},[e("span",[t._v("通知 ")]),t._v("Notify "),e("small",[e("i",[t._v("todo")])])])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/"}},[e("span",[t._v("输入框 ")]),t._v("Input "),e("small",[e("i",[t._v("todo")])])])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/picker"}},[e("span",[t._v("选择器 ")]),t._v("Picker")])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/"}},[e("span",[t._v("滑动窗 ")]),t._v("Swiper "),e("small",[e("i",[t._v("todo")])])])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/switch"}},[e("span",[t._v("开关 ")]),t._v("Switch")])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/"}},[e("span",[t._v("... ")]),t._v("Grid "),e("small",[e("i",[t._v("todo")])])])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/"}},[e("span",[t._v("... ")]),t._v("Flex "),e("small",[e("i",[t._v("todo")])])])],1)])])},i=[function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"title"},[e("h1",[t._v("p"),e("span",[t._v("u")]),t._v("dge")]),t._v(" "),e("p",[t._v("基于 VUE 2.0 的移动端框架")])])}],r={render:o,staticRenderFns:i};n.a=r},"0jum":function(t,n,e){"use strict";var o=function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{class:t.classes,style:t.warpStyle,on:{click:t.emitClick}},[t.icoClasses?e("i",{class:t.icoClasses}):t._e(),t._v(" "),t._t("default")],2)},i=[],r={render:o,staticRenderFns:i};n.a=r},"0xDb":function(t,n,e){"use strict";function o(t){return u+t}function i(t){return t[Math.random()*t.length|0]}function r(t){return"number"==typeof t?t+"px":t}n.b=o,n.a=i,n.c=r;var u="PG__"},"77Pl":function(t,n,e){var o=e("EqjI");t.exports=function(t){if(!o(t))throw TypeError(t+" is not an object!");return t}},"7KvD":function(t,n){var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},"9bBU":function(t,n,e){e("mClu");var o=e("FeBl").Object;t.exports=function(t,n,e){return o.defineProperty(t,n,e)}},AZVq:function(t,n,e){"use strict";var o=e("bWJ8"),i=e("W3ib");o.a.Group=i.a,n.a=o.a},C4MV:function(t,n,e){t.exports={default:e("9bBU"),__esModule:!0}},D2L2:function(t,n){var e={}.hasOwnProperty;t.exports=function(t,n){return e.call(t,n)}},EqjI:function(t,n){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},FeBl:function(t,n){var e=t.exports={version:"2.5.5"};"number"==typeof __e&&(__e=e)},JMgJ:function(t,n,e){var o=e("NH9v");"string"==typeof o&&(o=[[t.i,o,""]]),o.locals&&(t.exports=o.locals);e("rjj0")("2b187dbe",o,!0,{})},MJeb:function(t,n,e){var o=e("V92t");"string"==typeof o&&(o=[[t.i,o,""]]),o.locals&&(t.exports=o.locals);e("rjj0")("ee5c23a2",o,!0,{})},MmMw:function(t,n,e){var o=e("EqjI");t.exports=function(t,n){if(!o(t))return t;var e,i;if(n&&"function"==typeof(e=t.toString)&&!o(i=e.call(t)))return i;if("function"==typeof(e=t.valueOf)&&!o(i=e.call(t)))return i;if(!n&&"function"==typeof(e=t.toString)&&!o(i=e.call(t)))return i;throw TypeError("Can't convert object to primitive value")}},NH9v:function(t,n,e){n=t.exports=e("FZ+f")(!1),n.push([t.i,".PG__buttongroup{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden}.PG__buttongroup .PG__button{-webkit-box-flex:1;-ms-flex:1;flex:1;margin:0;border-radius:0}.PG__buttongroup .PG__button:first-child{border-radius:5px 0 0 5px}.PG__buttongroup .PG__button:last-child{border-radius:0 5px 5px 0}.PG__buttongroup .PG__button.PG__button-plain:not(:first-child){border-left-width:0}.PG__buttongroup.PG__buttongroup-stiff .PG__button:first-child,.PG__buttongroup.PG__buttongroup-stiff .PG__button:last-child{border-radius:0}.PG__buttongroup.PG__buttongroup-vertical{display:block}.PG__buttongroup.PG__buttongroup-vertical .PG__button,.PG__buttongroup.PG__buttongroup-vertical .PG__button.PG__button-plain{-webkit-box-flex:0;-ms-flex:none;flex:none;display:block;border-radius:0;margin:0;width:100%;border-bottom-width:0}.PG__buttongroup.PG__buttongroup-vertical .PG__button.PG__button-plain:first-child,.PG__buttongroup.PG__buttongroup-vertical .PG__button:first-child{border-radius:5px 5px 0 0}.PG__buttongroup.PG__buttongroup-vertical .PG__button.PG__button-plain:last-child,.PG__buttongroup.PG__buttongroup-vertical .PG__button:last-child{border-radius:0 0 5px 5px;border-bottom-width:1px}.PG__buttongroup.PG__buttongroup-vertical .PG__button.PG__button-plain.PG__button-plain:not(:first-child),.PG__buttongroup.PG__buttongroup-vertical .PG__button.PG__button-plain:not(:first-child){border-left-width:1px}",""])},NRDz:function(t,n,e){"use strict";e("AZVq");n.a={data:function(){return{}},methods:{}}},NYy5:function(t,n,e){"use strict";function o(t){e("MJeb")}Object.defineProperty(n,"__esModule",{value:!0});var i=e("NRDz"),r=e("0LRS"),u=e("VU/8"),a=o,l=u(i.a,r.a,!1,a,null,null);n.default=l.exports},ON07:function(t,n,e){var o=e("EqjI"),i=e("7KvD").document,r=o(i)&&o(i.createElement);t.exports=function(t){return r?i.createElement(t):{}}},S82l:function(t,n){t.exports=function(t){try{return!!t()}catch(t){return!0}}},SfB7:function(t,n,e){t.exports=!e("+E39")&&!e("S82l")(function(){return 7!=Object.defineProperty(e("ON07")("div"),"a",{get:function(){return 7}}).a})},V92t:function(t,n,e){n=t.exports=e("FZ+f")(!1),n.push([t.i,"#index{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#index .menu{text-indent:20px}#index .menu a{display:block;height:50px;line-height:50px;color:#333;transition:all .8s cubic-bezier(.075,.82,.165,1);-webkit-transition:all .8s cubic-bezier(.075,.82,.165,1)}#index .menu a:active{background:#f9f9f9;color:#000;letter-spacing:4px}#index .menu a span{display:none}",""])},W3ib:function(t,n,e){"use strict";function o(t){e("JMgJ")}var i=e("jwkd"),r=e("cLWf"),u=e("VU/8"),a=o,l=u(i.a,r.a,!1,a,null,null);n.a=l.exports},X8DO:function(t,n){t.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},bOdI:function(t,n,e){"use strict";n.__esModule=!0;var o=e("C4MV"),i=function(t){return t&&t.__esModule?t:{default:t}}(o);n.default=function(t,n,e){return n in t?(0,i.default)(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e,t}},bWJ8:function(t,n,e){"use strict";function o(t){e("qEun")}var i=e("ebqn"),r=e("0jum"),u=e("VU/8"),a=o,l=u(i.a,r.a,!1,a,null,null);n.a=l.exports},cLWf:function(t,n,e){"use strict";var o=function(){var t=this,n=t.$createElement;return(t._self._c||n)("div",{class:t.classes,style:t.warpStyle},[t._t("default")],2)},i=[],r={render:o,staticRenderFns:i};n.a=r},ebqn:function(t,n,e){"use strict";var o=e("bOdI"),i=e.n(o),r=e("0xDb"),u=Object(r.b)("button");n.a={name:"Button",props:{type:{type:String,default:"primary",validator:function(t){return["primary","info","success","warning","error"].includes(t)}},mini:{type:Boolean,default:!1},plain:{type:Boolean,default:!1},inline:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},ico:{type:String,default:""},stiff:{type:Boolean},margin:{type:[String,Number]}},data:function(){return{}},created:function(){},methods:{emitClick:function(t){this.$emit("click",t)}},computed:{classes:function(){var t;return[""+u,u+"-type-"+this.type,(t={},i()(t,u+"-mini",this.mini),i()(t,u+"-plain",this.plain),i()(t,u+"-inline",this.inline),i()(t,u+"-loading",this.loading),i()(t,u+"-disabled",this.disabled),i()(t,u+"-stiff",this.stiff),t)]},icoClasses:function(){var t=this.loading&&""==this.ico?"ico-loading":"ico-"+this.ico;return"ico-"!=t&&t},warpStyle:function(){if(void 0!==this.margin)return{margin:Object(r.c)(this.margin)}}},components:{}}},evD5:function(t,n,e){var o=e("77Pl"),i=e("SfB7"),r=e("MmMw"),u=Object.defineProperty;n.f=e("+E39")?Object.defineProperty:function(t,n,e){if(o(t),n=r(n,!0),o(e),i)try{return u(t,n,e)}catch(t){}if("get"in e||"set"in e)throw TypeError("Accessors not supported!");return"value"in e&&(t[n]=e.value),t}},hIzj:function(t,n,e){n=t.exports=e("FZ+f")(!1),n.push([t.i,".PG__button{vertical-align:middle;text-align:center;border-radius:5px;width:ellipsis;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 10px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;transition:all .4s ease;-webkit-transition:all .4s ease;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:block;width:auto;height:46px;line-height:48px;font-size:18px}.PG__button:active{-webkit-filter:contrast(.7);filter:contrast(.7)}.PG__button.PG__button-type-primary{background:#20a0ff}.PG__button.PG__button-type-primary.PG__button-plain{color:#20a0ff;border:1px solid #20a0ff}.PG__button.PG__button-type-success{background:#13ce66}.PG__button.PG__button-type-success.PG__button-plain{color:#13ce66;border:1px solid #13ce66}.PG__button.PG__button-type-warning{background:#f7ba2a}.PG__button.PG__button-type-warning.PG__button-plain{color:#f7ba2a;border:1px solid #f7ba2a}.PG__button.PG__button-type-error{background:#ff4949}.PG__button.PG__button-type-error.PG__button-plain{color:#ff4949;border:1px solid #ff4949}.PG__button.PG__button-type-info{background:#50bfff}.PG__button.PG__button-type-info.PG__button-plain{color:#50bfff;border:1px solid #50bfff}.PG__button.PG__button-plain{background:#fff;line-height:46px}.PG__button.PG__button-plain:active{-webkit-filter:contrast(1);filter:contrast(1);background:#f1f1f1}.PG__button.PG__button-mini{line-height:30px;height:30px;font-size:14px;padding:0 15px}.PG__button.PG__button-mini.PG__button-plain{line-height:28px}.PG__button.PG__button-inline{display:inline-block;width:auto;padding:0 25px}.PG__button.PG__button-loading{pointer-events:none;opacity:.6}.PG__button.PG__button-loading i{-webkit-animation:spin 1.5s infinite cubic-bezier(.63,0,.38,1);animation:spin 1.5s infinite cubic-bezier(.63,0,.38,1)}.PG__button.PG__button-disabled{-ms-touch-action:none;touch-action:none;pointer-events:none;background:#f7f7f7;color:#ccc}.PG__button.PG__button-stiff{border-radius:0}",""])},hJx8:function(t,n,e){var o=e("evD5"),i=e("X8DO");t.exports=e("+E39")?function(t,n,e){return o.f(t,n,i(1,e))}:function(t,n,e){return t[n]=e,t}},jwkd:function(t,n,e){"use strict";var o=e("bOdI"),i=e.n(o),r=e("0xDb"),u=Object(r.b)("buttongroup"),a=Object(r.b)("button");n.a={name:"ButtonGroup",props:{type:{type:String,validator:function(t){return["primary","info","success","warning","error"].includes(t)}},mini:{type:Boolean,default:!1},plain:{type:Boolean,default:!1},stiff:{type:Boolean},margin:{type:[String,Number],default:""},disabled:{type:Boolean,default:!1},vertical:{type:Boolean,default:!1}},data:function(){return{}},mounted:function(){var t=this;this.$slots.default.forEach(function(n){if(n.elm.classList){var e=n.elm.classList;t.type&&e.add(a+"-type-"+t.type),t.mini&&e.add(a+"-mini"),t.plain&&e.add(a+"-plain"),t.loading&&e.add(a+"-loading"),t.disabled&&e.add(a+"-disabled")}})},computed:{classes:function(){var t;return[u,(t={},i()(t,u+"-stiff",this.stiff),i()(t,u+"-vertical",this.vertical),t)]},warpStyle:function(){if(this.margin)return{margin:Object(r.c)(this.margin)}}}}},kM2E:function(t,n,e){var o=e("7KvD"),i=e("FeBl"),r=e("+ZMJ"),u=e("hJx8"),a=e("D2L2"),l=function(t,n,e){var s,c,_,f=t&l.F,p=t&l.G,b=t&l.S,d=t&l.P,v=t&l.B,P=t&l.W,G=p?i:i[n]||(i[n]={}),g=G.prototype,h=p?o:b?o[n]:(o[n]||{}).prototype;p&&(e=n);for(s in e)(c=!f&&h&&void 0!==h[s])&&a(G,s)||(_=c?h[s]:e[s],G[s]=p&&"function"!=typeof h[s]?e[s]:v&&c?r(_,o):P&&h[s]==_?function(t){var n=function(n,e,o){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(n);case 2:return new t(n,e)}return new t(n,e,o)}return t.apply(this,arguments)};return n.prototype=t.prototype,n}(_):d&&"function"==typeof _?r(Function.call,_):_,d&&((G.virtual||(G.virtual={}))[s]=_,t&l.R&&g&&!g[s]&&u(g,s,_)))};l.F=1,l.G=2,l.S=4,l.P=8,l.B=16,l.W=32,l.U=64,l.R=128,t.exports=l},lOnJ:function(t,n){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},mClu:function(t,n,e){var o=e("kM2E");o(o.S+o.F*!e("+E39"),"Object",{defineProperty:e("evD5").f})},qEun:function(t,n,e){var o=e("hIzj");"string"==typeof o&&(o=[[t.i,o,""]]),o.locals&&(t.exports=o.locals);e("rjj0")("2feed695",o,!0,{})}});
--------------------------------------------------------------------------------
/example/demo/8.2be9f3aa854b1f8a2a63.js:
--------------------------------------------------------------------------------
1 | webpackJsonp([8],{"+E39":function(t,n,e){t.exports=!e("S82l")(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},"+ZMJ":function(t,n,e){var o=e("lOnJ");t.exports=function(t,n,e){if(o(t),void 0===n)return t;switch(e){case 1:return function(e){return t.call(n,e)};case 2:return function(e,o){return t.call(n,e,o)};case 3:return function(e,o,i){return t.call(n,e,o,i)}}return function(){return t.apply(n,arguments)}}},"0jum":function(t,n,e){"use strict";var o=function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{class:t.classes,style:t.warpStyle,on:{click:t.emitClick}},[t.icoClasses?e("i",{class:t.icoClasses}):t._e(),t._v(" "),t._t("default")],2)},i=[],r={render:o,staticRenderFns:i};n.a=r},"0xDb":function(t,n,e){"use strict";function o(t){return u+t}function i(t){return t[Math.random()*t.length|0]}function r(t){return"number"==typeof t?t+"px":t}n.b=o,n.a=i,n.c=r;var u="PG__"},"77Pl":function(t,n,e){var o=e("EqjI");t.exports=function(t){if(!o(t))throw TypeError(t+" is not an object!");return t}},"7KvD":function(t,n){var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},"9bBU":function(t,n,e){e("mClu");var o=e("FeBl").Object;t.exports=function(t,n,e){return o.defineProperty(t,n,e)}},AZVq:function(t,n,e){"use strict";var o=e("bWJ8"),i=e("W3ib");o.a.Group=i.a,n.a=o.a},C4MV:function(t,n,e){t.exports={default:e("9bBU"),__esModule:!0}},CoXj:function(t,n,e){n=t.exports=e("FZ+f")(!1),n.push([t.i,"#index{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#index .menu{text-indent:20px}#index .menu a{display:block;height:50px;line-height:50px;color:#333;transition:all .8s cubic-bezier(.075,.82,.165,1);-webkit-transition:all .8s cubic-bezier(.075,.82,.165,1)}#index .menu a:active{background:#f9f9f9;color:#000;letter-spacing:4px}#index .menu a span{display:none}",""])},D2L2:function(t,n){var e={}.hasOwnProperty;t.exports=function(t,n){return e.call(t,n)}},EqjI:function(t,n){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},FeBl:function(t,n){var e=t.exports={version:"2.5.5"};"number"==typeof __e&&(__e=e)},JMgJ:function(t,n,e){var o=e("NH9v");"string"==typeof o&&(o=[[t.i,o,""]]),o.locals&&(t.exports=o.locals);e("rjj0")("2b187dbe",o,!0,{})},MmMw:function(t,n,e){var o=e("EqjI");t.exports=function(t,n){if(!o(t))return t;var e,i;if(n&&"function"==typeof(e=t.toString)&&!o(i=e.call(t)))return i;if("function"==typeof(e=t.valueOf)&&!o(i=e.call(t)))return i;if(!n&&"function"==typeof(e=t.toString)&&!o(i=e.call(t)))return i;throw TypeError("Can't convert object to primitive value")}},NH9v:function(t,n,e){n=t.exports=e("FZ+f")(!1),n.push([t.i,".PG__buttongroup{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden}.PG__buttongroup .PG__button{-webkit-box-flex:1;-ms-flex:1;flex:1;margin:0;border-radius:0}.PG__buttongroup .PG__button:first-child{border-radius:5px 0 0 5px}.PG__buttongroup .PG__button:last-child{border-radius:0 5px 5px 0}.PG__buttongroup .PG__button.PG__button-plain:not(:first-child){border-left-width:0}.PG__buttongroup.PG__buttongroup-stiff .PG__button:first-child,.PG__buttongroup.PG__buttongroup-stiff .PG__button:last-child{border-radius:0}.PG__buttongroup.PG__buttongroup-vertical{display:block}.PG__buttongroup.PG__buttongroup-vertical .PG__button,.PG__buttongroup.PG__buttongroup-vertical .PG__button.PG__button-plain{-webkit-box-flex:0;-ms-flex:none;flex:none;display:block;border-radius:0;margin:0;width:100%;border-bottom-width:0}.PG__buttongroup.PG__buttongroup-vertical .PG__button.PG__button-plain:first-child,.PG__buttongroup.PG__buttongroup-vertical .PG__button:first-child{border-radius:5px 5px 0 0}.PG__buttongroup.PG__buttongroup-vertical .PG__button.PG__button-plain:last-child,.PG__buttongroup.PG__buttongroup-vertical .PG__button:last-child{border-radius:0 0 5px 5px;border-bottom-width:1px}.PG__buttongroup.PG__buttongroup-vertical .PG__button.PG__button-plain.PG__button-plain:not(:first-child),.PG__buttongroup.PG__buttongroup-vertical .PG__button.PG__button-plain:not(:first-child){border-left-width:1px}",""])},NRDz:function(t,n,e){"use strict";e("AZVq");n.a={data:function(){return{}},methods:{}}},NYy5:function(t,n,e){"use strict";function o(t){e("TE5n")}Object.defineProperty(n,"__esModule",{value:!0});var i=e("NRDz"),r=e("TCaU"),u=e("VU/8"),a=o,l=u(i.a,r.a,!1,a,null,null);n.default=l.exports},ON07:function(t,n,e){var o=e("EqjI"),i=e("7KvD").document,r=o(i)&&o(i.createElement);t.exports=function(t){return r?i.createElement(t):{}}},S82l:function(t,n){t.exports=function(t){try{return!!t()}catch(t){return!0}}},SfB7:function(t,n,e){t.exports=!e("+E39")&&!e("S82l")(function(){return 7!=Object.defineProperty(e("ON07")("div"),"a",{get:function(){return 7}}).a})},TCaU:function(t,n,e){"use strict";var o=function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{attrs:{id:"index"}},[t._m(0),t._v(" "),e("ul",{staticClass:"menu"},[e("li",[e("router-link",{attrs:{to:"/tabs"}},[e("span",[t._v("选项卡 ")]),t._v("Tabs")])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/checkbox"}},[e("span",[t._v("多选框 ")]),t._v("Checkbox")])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/radio"}},[e("span",[t._v("单选框 ")]),t._v("Radio")])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/modal"}},[e("span",[t._v("弹窗 ")]),t._v("Modal")])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/ico"}},[e("span",[t._v("图标 ")]),t._v("Ico")])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/button"}},[e("span",[t._v("按钮 ")]),t._v("Button")])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/switch"}},[e("span",[t._v("开关 ")]),t._v("Switch")])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/"}},[e("span",[t._v("分页 ")]),t._v("List "),e("small",[e("i",[t._v("todo")])])])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/"}},[e("span",[t._v("通知 ")]),t._v("Notify "),e("small",[e("i",[t._v("todo")])])])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/"}},[e("span",[t._v("输入框 ")]),t._v("Input "),e("small",[e("i",[t._v("todo")])])])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/"}},[e("span",[t._v("选择器 ")]),t._v("Picker "),e("small",[e("i",[t._v("todo")])])])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/"}},[e("span",[t._v("滑动窗 ")]),t._v("Swiper "),e("small",[e("i",[t._v("todo")])])])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/"}},[e("span",[t._v("... ")]),t._v("Grid "),e("small",[e("i",[t._v("todo")])])])],1),t._v(" "),e("li",[e("router-link",{attrs:{to:"/"}},[e("span",[t._v("... ")]),t._v("Flex "),e("small",[e("i",[t._v("todo")])])])],1)])])},i=[function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"title"},[e("h1",[t._v("p"),e("span",[t._v("u")]),t._v("dge")]),t._v(" "),e("p",[t._v("基于 VUE 2.0 的移动端框架")])])}],r={render:o,staticRenderFns:i};n.a=r},TE5n:function(t,n,e){var o=e("CoXj");"string"==typeof o&&(o=[[t.i,o,""]]),o.locals&&(t.exports=o.locals);e("rjj0")("11a952ed",o,!0,{})},W3ib:function(t,n,e){"use strict";function o(t){e("JMgJ")}var i=e("jwkd"),r=e("cLWf"),u=e("VU/8"),a=o,l=u(i.a,r.a,!1,a,null,null);n.a=l.exports},X8DO:function(t,n){t.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},bOdI:function(t,n,e){"use strict";n.__esModule=!0;var o=e("C4MV"),i=function(t){return t&&t.__esModule?t:{default:t}}(o);n.default=function(t,n,e){return n in t?(0,i.default)(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e,t}},bWJ8:function(t,n,e){"use strict";function o(t){e("qEun")}var i=e("ebqn"),r=e("0jum"),u=e("VU/8"),a=o,l=u(i.a,r.a,!1,a,null,null);n.a=l.exports},cLWf:function(t,n,e){"use strict";var o=function(){var t=this,n=t.$createElement;return(t._self._c||n)("div",{class:t.classes,style:t.warpStyle},[t._t("default")],2)},i=[],r={render:o,staticRenderFns:i};n.a=r},ebqn:function(t,n,e){"use strict";var o=e("bOdI"),i=e.n(o),r=e("0xDb"),u=Object(r.b)("button");n.a={name:"Button",props:{type:{type:String,default:"primary",validator:function(t){return["primary","info","success","warning","error"].includes(t)}},mini:{type:Boolean,default:!1},plain:{type:Boolean,default:!1},inline:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},ico:{type:String,default:""},stiff:{type:Boolean},margin:{type:[String,Number]}},data:function(){return{}},created:function(){},methods:{emitClick:function(t){this.$emit("click",t)}},computed:{classes:function(){var t;return[""+u,u+"-type-"+this.type,(t={},i()(t,u+"-mini",this.mini),i()(t,u+"-plain",this.plain),i()(t,u+"-inline",this.inline),i()(t,u+"-loading",this.loading),i()(t,u+"-disabled",this.disabled),i()(t,u+"-stiff",this.stiff),t)]},icoClasses:function(){var t=this.loading&&""==this.ico?"ico-loading":"ico-"+this.ico;return"ico-"!=t&&t},warpStyle:function(){if(void 0!==this.margin)return{margin:Object(r.c)(this.margin)}}},components:{}}},evD5:function(t,n,e){var o=e("77Pl"),i=e("SfB7"),r=e("MmMw"),u=Object.defineProperty;n.f=e("+E39")?Object.defineProperty:function(t,n,e){if(o(t),n=r(n,!0),o(e),i)try{return u(t,n,e)}catch(t){}if("get"in e||"set"in e)throw TypeError("Accessors not supported!");return"value"in e&&(t[n]=e.value),t}},hIzj:function(t,n,e){n=t.exports=e("FZ+f")(!1),n.push([t.i,".PG__button{vertical-align:middle;text-align:center;border-radius:5px;width:ellipsis;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 10px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;transition:all .4s ease;-webkit-transition:all .4s ease;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:block;width:auto;height:46px;line-height:48px;font-size:18px}.PG__button:active{-webkit-filter:contrast(.7);filter:contrast(.7)}.PG__button.PG__button-type-primary{background:#20a0ff}.PG__button.PG__button-type-primary.PG__button-plain{color:#20a0ff;border:1px solid #20a0ff}.PG__button.PG__button-type-success{background:#13ce66}.PG__button.PG__button-type-success.PG__button-plain{color:#13ce66;border:1px solid #13ce66}.PG__button.PG__button-type-warning{background:#f7ba2a}.PG__button.PG__button-type-warning.PG__button-plain{color:#f7ba2a;border:1px solid #f7ba2a}.PG__button.PG__button-type-error{background:#ff4949}.PG__button.PG__button-type-error.PG__button-plain{color:#ff4949;border:1px solid #ff4949}.PG__button.PG__button-type-info{background:#50bfff}.PG__button.PG__button-type-info.PG__button-plain{color:#50bfff;border:1px solid #50bfff}.PG__button.PG__button-plain{background:#fff;line-height:46px}.PG__button.PG__button-plain:active{-webkit-filter:contrast(1);filter:contrast(1);background:#f1f1f1}.PG__button.PG__button-mini{line-height:30px;height:30px;font-size:14px;padding:0 15px}.PG__button.PG__button-mini.PG__button-plain{line-height:28px}.PG__button.PG__button-inline{display:inline-block;width:auto;padding:0 25px}.PG__button.PG__button-loading{pointer-events:none;opacity:.6}.PG__button.PG__button-loading i{-webkit-animation:spin 1.5s infinite cubic-bezier(.63,0,.38,1);animation:spin 1.5s infinite cubic-bezier(.63,0,.38,1)}.PG__button.PG__button-disabled{-ms-touch-action:none;touch-action:none;pointer-events:none;background:#f7f7f7;color:#ccc}.PG__button.PG__button-stiff{border-radius:0}",""])},hJx8:function(t,n,e){var o=e("evD5"),i=e("X8DO");t.exports=e("+E39")?function(t,n,e){return o.f(t,n,i(1,e))}:function(t,n,e){return t[n]=e,t}},jwkd:function(t,n,e){"use strict";var o=e("bOdI"),i=e.n(o),r=e("0xDb"),u=Object(r.b)("buttongroup"),a=Object(r.b)("button");n.a={name:"ButtonGroup",props:{type:{type:String,validator:function(t){return["primary","info","success","warning","error"].includes(t)}},mini:{type:Boolean,default:!1},plain:{type:Boolean,default:!1},stiff:{type:Boolean},margin:{type:[String,Number],default:""},disabled:{type:Boolean,default:!1},vertical:{type:Boolean,default:!1}},data:function(){return{}},mounted:function(){var t=this;this.$slots.default.forEach(function(n){if(n.elm.classList){var e=n.elm.classList;t.type&&e.add(a+"-type-"+t.type),t.mini&&e.add(a+"-mini"),t.plain&&e.add(a+"-plain"),t.loading&&e.add(a+"-loading"),t.disabled&&e.add(a+"-disabled")}})},computed:{classes:function(){var t;return[u,(t={},i()(t,u+"-stiff",this.stiff),i()(t,u+"-vertical",this.vertical),t)]},warpStyle:function(){if(this.margin)return{margin:Object(r.c)(this.margin)}}}}},kM2E:function(t,n,e){var o=e("7KvD"),i=e("FeBl"),r=e("+ZMJ"),u=e("hJx8"),a=e("D2L2"),l=function(t,n,e){var s,c,_,f=t&l.F,p=t&l.G,b=t&l.S,d=t&l.P,v=t&l.B,P=t&l.W,G=p?i:i[n]||(i[n]={}),g=G.prototype,h=p?o:b?o[n]:(o[n]||{}).prototype;p&&(e=n);for(s in e)(c=!f&&h&&void 0!==h[s])&&a(G,s)||(_=c?h[s]:e[s],G[s]=p&&"function"!=typeof h[s]?e[s]:v&&c?r(_,o):P&&h[s]==_?function(t){var n=function(n,e,o){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(n);case 2:return new t(n,e)}return new t(n,e,o)}return t.apply(this,arguments)};return n.prototype=t.prototype,n}(_):d&&"function"==typeof _?r(Function.call,_):_,d&&((G.virtual||(G.virtual={}))[s]=_,t&l.R&&g&&!g[s]&&u(g,s,_)))};l.F=1,l.G=2,l.S=4,l.P=8,l.B=16,l.W=32,l.U=64,l.R=128,t.exports=l},lOnJ:function(t,n){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},mClu:function(t,n,e){var o=e("kM2E");o(o.S+o.F*!e("+E39"),"Object",{defineProperty:e("evD5").f})},qEun:function(t,n,e){var o=e("hIzj");"string"==typeof o&&(o=[[t.i,o,""]]),o.locals&&(t.exports=o.locals);e("rjj0")("2feed695",o,!0,{})}});
--------------------------------------------------------------------------------
/example/demo/example.min.css:
--------------------------------------------------------------------------------
1 | progress,sub,sup{vertical-align:baseline}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}button,hr,input{overflow:visible}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,body.__modal_open,html{height:100%;width:100%}body.__modal_open{position:fixed;overflow:auto}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent;-webkit-text-decoration-skip:objects;text-decoration:none}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}dfn{font-style:italic}mark{background-color:#ff0;color:#000}sub,sup{line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0;vertical-align:middle}optgroup{font-weight:700}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto;resize:none;vertical-align:top}input,select,textarea{outline:0}[disabled]{cursor:default}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}input::-moz-placeholder,textarea::-moz-placeholder{color:inherit;opacity:.54}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:inherit;opacity:.54}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:inherit;opacity:.54}input::-ms-clear,input::-ms-reveal{display:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}blockquote,figure,form,h1,h2,h3,h4,h5,h6,p{margin:0}dd,dl,li,ol,ul{margin:0;padding:0}ol,ul{list-style:none}body{margin:0;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,\\5FAE\8F6F\96C5\9ED1,Arial,sans-serif;font-weight:400;font-size:16px;color:#1f2d3d;-webkit-tap-highlight-color:transparent}h1,h2,h3,h4,h5,h6{font-weight:inherit}h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child,h6:first-child,p:first-child{margin-top:0}h1:last-child,h2:last-child,h3:last-child,h4:last-child,h5:last-child,h6:last-child,p:last-child{margin-bottom:0}h1{font-size:20px}h2{font-size:18px}h3{font-size:16px}h4,h5,h6,p{font-size:inherit}p{line-height:1.8}sub,sup{font-size:13px}small{font-size:12px}hr{box-sizing:content-box;height:0;margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.border,.border-b,.border-l,.border-r,.border-t,.border-tb{position:relative}.border-l:before,.border-r:after{width:1px;height:100%;top:0;bottom:auto;transform-origin:50% 100%}.border-b:after,.border-l:before,.border-r:after,.border-t:before{background-color:#eee;display:block;content:"";position:absolute;z-index:2;pointer-events:none}.border-b:after,.border-t:before{width:100%;height:1px;left:0;right:auto;transform-origin:100% 50%}.border-l:before{right:auto;left:0}.border-r:after{right:0;left:auto}.border-t:before{bottom:auto;top:0}.border-b:after{bottom:0;top:auto}.border:after{display:block;content:"";position:absolute;top:0;bottom:auto;left:0;right:auto;-webkit-transform-origin:0 0;-webkit-transform:scale(1);pointer-events:none;border:1px solid #eee}@media screen and (-webkit-min-device-pixel-ratio:1.5){.border:after{right:-100%;bottom:-100%;-webkit-transform:scale(.5)}}@media only screen and (-webkit-min-device-pixel-ratio:1.5){.border-l:before,.border-r:after{transform:scaleX(1)}.border-b:after,.border-t:before{transform:scaleY(1)}}@media only screen and (-webkit-min-device-pixel-ratio:2){.border-l:before,.border-r:after{transform:scaleX(.5)}.border-b:after,.border-t:before{transform:scaleY(.5)}}@media only screen and (-webkit-min-device-pixel-ratio:3){.border-l:before,.border-r:after{transform:scaleX(.333)}.border-b:after,.border-t:before{transform:scaleY(.333)}}@font-face{font-family:pg-ico;src:url(http://at.alicdn.com/t/font_425006_tmthy4fwnc9885mi.woff) format("woff"),url(http://at.alicdn.com/t/font_425006_tmthy4fwnc9885mi.ttf) format("truetype")}[class*=" ico-"],[class^=ico-]{font-family:pg-ico!important;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;vertical-align:baseline;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ico-activity:before{content:"\E6DE"}.ico-activity-fill:before{content:"\E6DF"}.ico-add:before{content:"\E70C"}.ico-addition-fill:before{content:"\E6E1"}.ico-addition:before{content:"\E6E2"}.ico-addpeople-fill:before{content:"\E6E3"}.ico-addpeople:before{content:"\E6E4"}.ico-addressbook-fill:before{content:"\E6E5"}.ico-addressbook:before{content:"\E6E6"}.ico-barrage-fill:before{content:"\E6E7"}.ico-barrage:before{content:"\E6E8"}.ico-eye-fill:before{content:"\E6E9"}.ico-eye:before{content:"\E6EA"}.ico-brush:before{content:"\E6EB"}.ico-brush-fill:before{content:"\E6EC"}.ico-businesscard-fill:before{content:"\E6ED"}.ico-businesscard:before{content:"\E6EE"}.ico-camera-fill:before{content:"\E70D"}.ico-camera:before{content:"\E70E"}.ico-clock-fill:before{content:"\E70F"}.ico-clock:before{content:"\E710"}.ico-close:before{content:"\E6EF"}.ico-star-fill:before{content:"\E6F0"}.ico-star:before{content:"\E6F1"}.ico-computer-fill:before{content:"\E711"}.ico-computer:before{content:"\E712"}.ico-coordinates-fill:before{content:"\E713"}.ico-coordinates:before{content:"\E714"}.ico-createtask-fill:before{content:"\E715"}.ico-createtask:before{content:"\E716"}.ico-delete-fill:before{content:"\E717"}.ico-delete:before{content:"\E718"}.ico-emoji-fill:before{content:"\E719"}.ico-emoji:before{content:"\E726"}.ico-empty:before{content:"\E727"}.ico-empty-fill:before{content:"\E728"}.ico-enter:before{content:"\E729"}.ico-enterinto:before{content:"\E72A"}.ico-enterinto-fill:before{content:"\E72B"}.ico-feedback-fill:before{content:"\E72C"}.ico-feedback:before{content:"\E731"}.ico-flag-fill:before{content:"\E732"}.ico-flag:before{content:"\E733"}.ico-flash:before{content:"\E6FC"}.ico-flash-fill:before{content:"\E6FD"}.ico-group:before{content:"\E734"}.ico-group-fill:before{content:"\E735"}.ico-headlines-fill:before{content:"\E736"}.ico-headlines:before{content:"\E737"}.ico-homepage-fill:before{content:"\E738"}.ico-homepage:before{content:"\E739"}.ico-integral-fill:before{content:"\E73A"}.ico-integral:before{content:"\E73B"}.ico-interactive-fill:before{content:"\E73C"}.ico-interactive:before{content:"\E741"}.ico-label:before{content:"\E742"}.ico-label-fill:before{content:"\E743"}.ico-like-fill:before{content:"\E707"}.ico-like:before{content:"\E708"}.ico-live-fill:before{content:"\E744"}.ico-live:before{content:"\E745"}.ico-lock-fill:before{content:"\E746"}.ico-lock:before{content:"\E747"}.ico-mail:before{content:"\E748"}.ico-mail-fill:before{content:"\E749"}.ico-manage-fill:before{content:"\E74A"}.ico-manage:before{content:"\E74B"}.ico-message:before{content:"\E74C"}.ico-message-fill:before{content:"\E74D"}.ico-mine:before{content:"\E74E"}.ico-mine-fill:before{content:"\E74F"}.ico-mobilephone-fill:before{content:"\E750"}.ico-mobilephone:before{content:"\E751"}.ico-more:before{content:"\E752"}.ico-offline-fill:before{content:"\E753"}.ico-offline:before{content:"\E754"}.ico-order-fill:before{content:"\E755"}.ico-order:before{content:"\E756"}.ico-other:before{content:"\E757"}.ico-people-fill:before{content:"\E758"}.ico-people:before{content:"\E759"}.ico-picture-fill:before{content:"\E75A"}.ico-picture:before{content:"\E75B"}.ico-play:before{content:"\E75C"}.ico-play-fill:before{content:"\E75D"}.ico-playon-fill:before{content:"\E75E"}.ico-playon:before{content:"\E75F"}.ico-praise-fill:before{content:"\E71A"}.ico-praise:before{content:"\E71B"}.ico-prompt-fill:before{content:"\E71C"}.ico-prompt:before{content:"\E71D"}.ico-qrcode-fill:before{content:"\E760"}.ico-qrcode:before{content:"\E761"}.ico-redpacket-fill:before{content:"\E762"}.ico-redpacket:before{content:"\E763"}.ico-refresh:before{content:"\E764"}.ico-remind-fill:before{content:"\E71F"}.ico-remind:before{content:"\E720"}.ico-return:before{content:"\E765"}.ico-right:before{content:"\E766"}.ico-scan:before{content:"\E767"}.ico-select-fill:before{content:"\E768"}.ico-select:before{content:"\E769"}.ico-service-fill:before{content:"\E76A"}.ico-service:before{content:"\E76B"}.ico-setup-fill:before{content:"\E76C"}.ico-setup:before{content:"\E76D"}.ico-share-fill:before{content:"\E76E"}.ico-share:before{content:"\E76F"}.ico-stealth-fill:before{content:"\E770"}.ico-stealth:before{content:"\E771"}.ico-success-fill:before{content:"\E72D"}.ico-success:before{content:"\E72E"}.ico-switch:before{content:"\E772"}.ico-systemprompt-fill:before{content:"\E773"}.ico-systemprompt:before{content:"\E774"}.ico-task:before{content:"\E775"}.ico-task-fill:before{content:"\E776"}.ico-tasklist-fill:before{content:"\E777"}.ico-tasklist:before{content:"\E778"}.ico-time-fill:before{content:"\E779"}.ico-time:before{content:"\E77A"}.ico-translation-fill:before{content:"\E77B"}.ico-translation:before{content:"\E77C"}.ico-unlock-fill:before{content:"\E77D"}.ico-unlock:before{content:"\E77E"}.ico-video:before{content:"\E77F"}.ico-video-fill:before{content:"\E780"}.ico-warning-fill:before{content:"\E73D"}.ico-warning:before{content:"\E73E"}.ico-workbench-fill:before{content:"\E781"}.ico-workbench:before{content:"\E782"}.ico-search:before{content:"\E783"}.ico-search-fill:before{content:"\E784"}.ico-goods-fill:before{content:"\E785"}.ico-transaction-fill:before{content:"\E786"}.ico-packup:before{content:"\E787"}.ico-unfold:before{content:"\E788"}.ico-financial-fill:before{content:"\E789"}.ico-marketing-fill:before{content:"\E78A"}.ico-shake:before{content:"\E78B"}.ico-decoration-fill:before{content:"\E78C"}.ico-loading:before{content:"\E616"}.ico-empty:before{content:"\E875"}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(359deg)}}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;src:local("Montserrat Regular"),local("Montserrat-Regular"),url(https://fonts.gstatic.com/s/montserrat/v12/rBHvpRWBkgyW99dXT88n7yEAvth_LlrfE80CYdSH47w.woff2?123) format("woff2");unicode-range:u+0460-052f,u+20b4,u+2de0-2dff,u+a640-a69f}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;src:local("Montserrat Regular"),local("Montserrat-Regular"),url(https://fonts.gstatic.com/s/montserrat/v12/NX1NravqaXESu9fFv7KuqiEAvth_LlrfE80CYdSH47w.woff2?123) format("woff2");unicode-range:u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;src:local("Montserrat Regular"),local("Montserrat-Regular"),url(https://fonts.gstatic.com/s/montserrat/v12/SKK6Nusyv8QPNMtI4j9J2yEAvth_LlrfE80CYdSH47w.woff2?123) format("woff2");unicode-range:u+0102-0103,u+1ea0-1ef9,u+20ab}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;src:local("Montserrat Regular"),local("Montserrat-Regular"),url(https://fonts.gstatic.com/s/montserrat/v12/gFXtEMCp1m_YzxsBpKl68iEAvth_LlrfE80CYdSH47w.woff2?123) format("woff2");unicode-range:u+0100-024f,u+1e??,u+20a0-20ab,u+20ad-20cf,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;src:local("Montserrat Regular"),local("Montserrat-Regular"),url(https://fonts.gstatic.com/s/montserrat/v12/zhcz-_WihjSQC0oHJ9TCYPk_vArhqVIZ0nv9q090hN8.woff2?123) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02c6,u+02da,u+02dc,u+2000-206f,u+2074,u+20ac,u+2212,u+2215}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;src:local("Montserrat Bold"),local("Montserrat-Bold"),url(https://fonts.gstatic.com/s/montserrat/v12/IQHow_FEYlDC4Gzy_m8fcude9INZm0R8ZMJUtfOsxrw.woff2?123) format("woff2");unicode-range:u+0460-052f,u+20b4,u+2de0-2dff,u+a640-a69f}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;src:local("Montserrat Bold"),local("Montserrat-Bold"),url(https://fonts.gstatic.com/s/montserrat/v12/IQHow_FEYlDC4Gzy_m8fcrpHcMS0zZe4mIYvDKG2oeM.woff2?123) format("woff2");unicode-range:u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;src:local("Montserrat Bold"),local("Montserrat-Bold"),url(https://fonts.gstatic.com/s/montserrat/v12/IQHow_FEYlDC4Gzy_m8fcjh33M2A-6X0bdu871ruAGs.woff2?123) format("woff2");unicode-range:u+0102-0103,u+1ea0-1ef9,u+20ab}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;src:local("Montserrat Bold"),local("Montserrat-Bold"),url(https://fonts.gstatic.com/s/montserrat/v12/IQHow_FEYlDC4Gzy_m8fchHJTnCUrjaAm2S9z52xC3Y.woff2?123) format("woff2");unicode-range:u+0100-024f,u+1e??,u+20a0-20ab,u+20ad-20cf,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;src:local("Montserrat Bold"),local("Montserrat-Bold"),url(https://fonts.gstatic.com/s/montserrat/v12/IQHow_FEYlDC4Gzy_m8fcoWiMMZ7xLd792ULpGE4W_Y.woff2?123) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02c6,u+02da,u+02dc,u+2000-206f,u+2074,u+20ac,u+2212,u+2215}body{font-family:Montserrat,sans-serif}.title{padding:20px}h1{font-weight:700;text-transform:capitalize;letter-spacing:-1px;font-size:28px}h1 span{color:#20a0ff}p{color:#aaa;font-size:14px;line-height:18px}.router-view{position:absolute;width:100%;transition:transform .5s cubic-bezier(.55,0,.1,1),opacity .5s cubic-bezier(.55,0,.1,1),cubic-bezier(.075,.82,.165,1);-webkit-transition:transform .5s cubic-bezier(.55,0,.1,1),opacity .5s cubic-bezier(.55,0,.1,1),cubic-bezier(.075,.82,.165,1)}.fade-enter-active,.fade-leave-active{transition:opacity .5s ease;-webkit-transition:opacity .5s ease}.fade-enter,.fade-leave-active{opacity:0}.slide-left-enter,.slide-right-leave-active{opacity:0;transform:translate(30px);-webkit-transform:translate(30px)}.slide-left-leave-active,.slide-right-enter{opacity:0;transform:translate(-30px);-webkit-transform:translate(-30px)}
--------------------------------------------------------------------------------
/example/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
38 |
39 |
40 |
58 |
59 |
60 |
75 |
76 |
77 |
84 |
85 |
86 |
87 |
88 |
89 |
292 |
293 |
413 |
--------------------------------------------------------------------------------
/src/assets/css/base.styl:
--------------------------------------------------------------------------------
1 | progress,sub,sup {
2 | vertical-align: baseline
3 | }
4 | [type=checkbox],[type=radio],legend {
5 | box-sizing: border-box;
6 | padding: 0
7 | }
8 |
9 | button,hr,input {
10 | overflow: visible
11 | }
12 |
13 | html {
14 | font-family: sans-serif;
15 | -ms-text-size-adjust: 100%;
16 | -webkit-text-size-adjust: 100%
17 | }
18 | html,body{
19 | height: 100%;
20 | width: 100%;
21 | }
22 |
23 | body.__modal_open{
24 | position: fixed;
25 | width: 100%;
26 | height: 100%;
27 | overflow: auto;
28 | }
29 |
30 | article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary {
31 | display: block
32 | }
33 |
34 | audio,canvas,progress,video {
35 | display: inline-block
36 | }
37 |
38 | audio:not([controls]) {
39 | display: none;
40 | height: 0
41 | }
42 | [hidden],template {
43 | display: none
44 | }
45 |
46 | a {
47 | background-color: transparent;
48 | -webkit-text-decoration-skip: objects;
49 | text-decoration: none
50 | }
51 |
52 | /**
53 | a {
54 | color: #20a0ff;
55 | }
56 | a:focus,a:hover {
57 | color: #4db3ff
58 | }
59 |
60 | a:active {
61 | color: #1d90e6
62 | }
63 | **/
64 |
65 | a:active,a:hover {
66 | outline-width: 0
67 | }
68 |
69 | abbr[title] {
70 | border-bottom: none;
71 | text-decoration: underline;
72 | text-decoration: underline dotted
73 | }
74 |
75 | b,strong {
76 | font-weight: bolder
77 | }
78 |
79 | dfn {
80 | font-style: italic
81 | }
82 |
83 | mark {
84 | background-color: #ff0;
85 | color: #000
86 | }
87 |
88 | sub,sup {
89 | line-height: 0;
90 | position: relative
91 | }
92 |
93 | sub {
94 | bottom: -.25em
95 | }
96 |
97 | sup {
98 | top: -.5em
99 | }
100 |
101 | img {
102 | border-style: none
103 | }
104 |
105 | svg:not(:root) {
106 | overflow: hidden
107 | }
108 |
109 | code,kbd,pre,samp {
110 | font-family: monospace,monospace;
111 | font-size: 1em
112 | }
113 |
114 | button,input,optgroup,select,textarea {
115 | color: inherit;
116 | font: inherit;
117 | margin: 0;
118 | vertical-align: middle
119 | }
120 |
121 | optgroup {
122 | font-weight: 700
123 | }
124 |
125 | button,select {
126 | text-transform: none
127 | }[type=reset],[type=submit],button,html [type=button] {
128 | -webkit-appearance: button
129 | }[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner {
130 | border-style: none;
131 | padding: 0
132 | }[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring {
133 | outline: ButtonText dotted 1px
134 | }
135 |
136 | fieldset {
137 | border: 1px solid silver;
138 | margin: 0 2px;
139 | padding: .35em .625em .75em
140 | }
141 |
142 | legend {
143 | color: inherit;
144 | display: table;
145 | max-width: 100%;
146 | white-space: normal
147 | }
148 |
149 | textarea {
150 | overflow: auto;
151 | resize: none;
152 | vertical-align: top
153 | }
154 |
155 | input,select,textarea {
156 | outline: 0
157 | }[disabled] {
158 | cursor: default
159 | }[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button {
160 | height: auto
161 | }[type=search] {
162 | -webkit-appearance: textfield;
163 | outline-offset: -2px
164 | }[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration {
165 | -webkit-appearance: none
166 | }
167 |
168 | input::-moz-placeholder,textarea::-moz-placeholder {
169 | color: inherit;
170 | opacity: .54
171 | }
172 |
173 | input:-ms-input-placeholder,textarea:-ms-input-placeholder {
174 | color: inherit;
175 | opacity: .54
176 | }
177 |
178 | input::-webkit-input-placeholder,textarea::-webkit-input-placeholder {
179 | color: inherit;
180 | opacity: .54
181 | }
182 |
183 | input::-ms-clear,input::-ms-reveal {
184 | display: none
185 | }
186 |
187 | ::-webkit-file-upload-button {
188 | -webkit-appearance: button;
189 | font: inherit
190 | }
191 |
192 | table {
193 | border-collapse: collapse;
194 | border-spacing: 0
195 | }
196 |
197 | td,th {
198 | padding: 0
199 | }
200 |
201 | blockquote,figure,form,h1,h2,h3,h4,h5,h6,p {
202 | margin: 0
203 | }
204 |
205 | dd,dl,li,ol,ul {
206 | margin: 0;
207 | padding: 0
208 | }
209 |
210 | ol,ul {
211 | list-style: none
212 | }
213 |
214 | body {
215 | margin: 0;
216 | font-family: "Helvetica Neue",Helvetica,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","微软雅黑",Arial,sans-serif;
217 | font-weight: 400;
218 | font-size: 16px;
219 | color: #1f2d3d
220 | -webkit-tap-highlight-color:transparent;
221 | }
222 |
223 |
224 | h1,h2,h3,h4,h5,h6 {
225 | font-weight: inherit
226 | }
227 |
228 | h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child,h6:first-child,p:first-child {
229 | margin-top: 0
230 | }
231 |
232 | h1:last-child,h2:last-child,h3:last-child,h4:last-child,h5:last-child,h6:last-child,p:last-child {
233 | margin-bottom: 0
234 | }
235 |
236 | h1 {
237 | font-size: 20px
238 | }
239 |
240 | h2 {
241 | font-size: 18px
242 | }
243 |
244 | h3 {
245 | font-size: 16px
246 | }
247 |
248 | h4,h5,h6,p {
249 | font-size: inherit
250 | }
251 |
252 | p {
253 | line-height: 1.8
254 | }
255 |
256 | sub,sup {
257 | font-size: 13px
258 | }
259 |
260 | small {
261 | font-size: 12px
262 | }
263 |
264 | hr {
265 | box-sizing: content-box;
266 | height: 0;
267 | margin-top: 20px;
268 | margin-bottom: 20px;
269 | border: 0;
270 | border-top: 1px solid #eee
271 | }
272 |
273 | /*移动端 1PX 边框*/
274 | .border-t,
275 | .border-b,
276 | .border-l,
277 | .border-r,
278 | .border-tb,
279 | .border {
280 | position: relative;
281 | }
282 | .border-l:before,
283 | .border-r:after {
284 | width: 1px;
285 | height: 100%;
286 | background-color: #eee;
287 | display: block;
288 | content: '';
289 | position: absolute;
290 | z-index: 2;
291 | top: 0;
292 | bottom: auto;
293 | -webkit-transform-origin: 50% 100%;
294 | transform-origin: 50% 100%;
295 | pointer-events: none;
296 | }
297 | .border-t:before,
298 | .border-b:after {
299 | width: 100%;
300 | height: 1px;
301 | background-color: #eee;
302 | display: block;
303 | content: '';
304 | position: absolute;
305 | z-index: 2;
306 | left: 0;
307 | right: auto;
308 | -webkit-transform-origin: 100% 50%;
309 | transform-origin: 100% 50%;
310 | pointer-events: none;
311 | }
312 | .border-l:before {
313 | right: auto;
314 | left: 0;
315 | }
316 | .border-r:after {
317 | right: 0;
318 | left: auto;
319 | }
320 | .border-t:before {
321 | bottom: auto;
322 | top: 0;
323 | }
324 | .border-b:after {
325 | bottom: 0;
326 | top: auto;
327 | }
328 | .border:after {
329 | display: block;
330 | content: '';
331 | position: absolute;
332 | top: 0;
333 | bottom: auto;
334 | left: 0;
335 | right: auto;
336 | -webkit-transform-origin: 0 0;
337 | -webkit-transform: scale(1);
338 | pointer-events: none;
339 | border: 1px solid #eee;
340 | }
341 | @media screen and (-webkit-min-device-pixel-ratio:1.5) {
342 | .border:after {
343 | right: -100%;
344 | bottom: -100%;
345 | -webkit-transform: scale(0.5);
346 | }
347 | }
348 | @media only screen and (-webkit-min-device-pixel-ratio: 1.5) {
349 | .border-r:after,
350 | .border-l:before {
351 | -webkit-transform: scaleX(1);
352 | transform: scaleX(1);
353 | }
354 | .border-t:before,
355 | .border-b:after {
356 | -webkit-transform: scaleY(1);
357 | transform: scaleY(1);
358 | }
359 | }
360 | @media only screen and (-webkit-min-device-pixel-ratio: 2) {
361 | .border-r:after,
362 | .border-l:before {
363 | -webkit-transform: scaleX(0.5);
364 | transform: scaleX(0.5);
365 | }
366 | .border-t:before,
367 | .border-b:after {
368 | -webkit-transform: scaleY(0.5);
369 | transform: scaleY(0.5);
370 | }
371 | }
372 | @media only screen and (-webkit-min-device-pixel-ratio: 3) {
373 | .border-r:after,
374 | .border-l:before {
375 | -webkit-transform: scaleX(0.333);
376 | transform: scaleX(0.333);
377 | }
378 | .border-t:before,
379 | .border-b:after {
380 | -webkit-transform: scaleY(0.333);
381 | transform: scaleY(0.333);
382 | }
383 | }
384 |
385 | @font-face
386 | font-family pg-ico
387 | src url('http://at.alicdn.com/t/font_425006_tmthy4fwnc9885mi.woff') format('woff'),
388 | url('http://at.alicdn.com/t/font_425006_tmthy4fwnc9885mi.ttf') format('truetype')
389 |
390 | [class*=" ico-"]
391 | [class^="ico-"]
392 | font-family pg-ico !important
393 | speak none
394 | font-style normal
395 | font-weight 400
396 | font-variant normal
397 | text-transform none
398 | line-height 1
399 | vertical-align baseline
400 | display inline-block
401 | -webkit-font-smoothing antialiased
402 | -moz-osx-font-smoothing grayscale
403 |
404 | .ico-activity:before
405 | content "\e6de"
406 | .ico-activity-fill:before
407 | content "\e6df"
408 | .ico-add:before
409 | content "\e70c"
410 | .ico-addition-fill:before
411 | content "\e6e1"
412 | .ico-addition:before
413 | content "\e6e2"
414 | .ico-addpeople-fill:before
415 | content "\e6e3"
416 | .ico-addpeople:before
417 | content "\e6e4"
418 | .ico-addressbook-fill:before
419 | content "\e6e5"
420 | .ico-addressbook:before
421 | content "\e6e6"
422 | .ico-barrage-fill:before
423 | content "\e6e7"
424 | .ico-barrage:before
425 | content "\e6e8"
426 | .ico-eye-fill:before
427 | content "\e6e9"
428 | .ico-eye:before
429 | content "\e6ea"
430 | .ico-brush:before
431 | content "\e6eb"
432 | .ico-brush-fill:before
433 | content "\e6ec"
434 | .ico-businesscard-fill:before
435 | content "\e6ed"
436 | .ico-businesscard:before
437 | content "\e6ee"
438 | .ico-camera-fill:before
439 | content "\e70d"
440 | .ico-camera:before
441 | content "\e70e"
442 | .ico-clock-fill:before
443 | content "\e70f"
444 | .ico-clock:before
445 | content "\e710"
446 | .ico-close:before
447 | content "\e6ef"
448 | .ico-star-fill:before
449 | content "\e6f0"
450 | .ico-star:before
451 | content "\e6f1"
452 | .ico-computer-fill:before
453 | content "\e711"
454 | .ico-computer:before
455 | content "\e712"
456 | .ico-coordinates-fill:before
457 | content "\e713"
458 | .ico-coordinates:before
459 | content "\e714"
460 | .ico-createtask-fill:before
461 | content "\e715"
462 | .ico-createtask:before
463 | content "\e716"
464 | .ico-delete-fill:before
465 | content "\e717"
466 | .ico-delete:before
467 | content "\e718"
468 | .ico-emoji-fill:before
469 | content "\e719"
470 | .ico-emoji:before
471 | content "\e726"
472 | .ico-empty:before
473 | content "\e727"
474 | .ico-empty-fill:before
475 | content "\e728"
476 | .ico-enter:before
477 | content "\e729"
478 | .ico-enterinto:before
479 | content "\e72a"
480 | .ico-enterinto-fill:before
481 | content "\e72b"
482 | .ico-feedback-fill:before
483 | content "\e72c"
484 | .ico-feedback:before
485 | content "\e731"
486 | .ico-flag-fill:before
487 | content "\e732"
488 | .ico-flag:before
489 | content "\e733"
490 | .ico-flash:before
491 | content "\e6fc"
492 | .ico-flash-fill:before
493 | content "\e6fd"
494 | .ico-group:before
495 | content "\e734"
496 | .ico-group-fill:before
497 | content "\e735"
498 | .ico-headlines-fill:before
499 | content "\e736"
500 | .ico-headlines:before
501 | content "\e737"
502 | .ico-homepage-fill:before
503 | content "\e738"
504 | .ico-homepage:before
505 | content "\e739"
506 | .ico-integral-fill:before
507 | content "\e73a"
508 | .ico-integral:before
509 | content "\e73b"
510 | .ico-interactive-fill:before
511 | content "\e73c"
512 | .ico-interactive:before
513 | content "\e741"
514 | .ico-label:before
515 | content "\e742"
516 | .ico-label-fill:before
517 | content "\e743"
518 | .ico-like-fill:before
519 | content "\e707"
520 | .ico-like:before
521 | content "\e708"
522 | .ico-live-fill:before
523 | content "\e744"
524 | .ico-live:before
525 | content "\e745"
526 | .ico-lock-fill:before
527 | content "\e746"
528 | .ico-lock:before
529 | content "\e747"
530 | .ico-mail:before
531 | content "\e748"
532 | .ico-mail-fill:before
533 | content "\e749"
534 | .ico-manage-fill:before
535 | content "\e74a"
536 | .ico-manage:before
537 | content "\e74b"
538 | .ico-message:before
539 | content "\e74c"
540 | .ico-message-fill:before
541 | content "\e74d"
542 | .ico-mine:before
543 | content "\e74e"
544 | .ico-mine-fill:before
545 | content "\e74f"
546 | .ico-mobilephone-fill:before
547 | content "\e750"
548 | .ico-mobilephone:before
549 | content "\e751"
550 | .ico-more:before
551 | content "\e752"
552 | .ico-offline-fill:before
553 | content "\e753"
554 | .ico-offline:before
555 | content "\e754"
556 | .ico-order-fill:before
557 | content "\e755"
558 | .ico-order:before
559 | content "\e756"
560 | .ico-other:before
561 | content "\e757"
562 | .ico-people-fill:before
563 | content "\e758"
564 | .ico-people:before
565 | content "\e759"
566 | .ico-picture-fill:before
567 | content "\e75a"
568 | .ico-picture:before
569 | content "\e75b"
570 | .ico-play:before
571 | content "\e75c"
572 | .ico-play-fill:before
573 | content "\e75d"
574 | .ico-playon-fill:before
575 | content "\e75e"
576 | .ico-playon:before
577 | content "\e75f"
578 | .ico-praise-fill:before
579 | content "\e71a"
580 | .ico-praise:before
581 | content "\e71b"
582 | .ico-prompt-fill:before
583 | content "\e71c"
584 | .ico-prompt:before
585 | content "\e71d"
586 | .ico-qrcode-fill:before
587 | content "\e760"
588 | .ico-qrcode:before
589 | content "\e761"
590 | .ico-redpacket-fill:before
591 | content "\e762"
592 | .ico-redpacket:before
593 | content "\e763"
594 | .ico-refresh:before
595 | content "\e764"
596 | .ico-remind-fill:before
597 | content "\e71f"
598 | .ico-remind:before
599 | content "\e720"
600 | .ico-return:before
601 | content "\e765"
602 | .ico-right:before
603 | content "\e766"
604 | .ico-scan:before
605 | content "\e767"
606 | .ico-select-fill:before
607 | content "\e768"
608 | .ico-select:before
609 | content "\e769"
610 | .ico-service-fill:before
611 | content "\e76a"
612 | .ico-service:before
613 | content "\e76b"
614 | .ico-setup-fill:before
615 | content "\e76c"
616 | .ico-setup:before
617 | content "\e76d"
618 | .ico-share-fill:before
619 | content "\e76e"
620 | .ico-share:before
621 | content "\e76f"
622 | .ico-stealth-fill:before
623 | content "\e770"
624 | .ico-stealth:before
625 | content "\e771"
626 | .ico-success-fill:before
627 | content "\e72d"
628 | .ico-success:before
629 | content "\e72e"
630 | .ico-switch:before
631 | content "\e772"
632 | .ico-systemprompt-fill:before
633 | content "\e773"
634 | .ico-systemprompt:before
635 | content "\e774"
636 | .ico-task:before
637 | content "\e775"
638 | .ico-task-fill:before
639 | content "\e776"
640 | .ico-tasklist-fill:before
641 | content "\e777"
642 | .ico-tasklist:before
643 | content "\e778"
644 | .ico-time-fill:before
645 | content "\e779"
646 | .ico-time:before
647 | content "\e77a"
648 | .ico-translation-fill:before
649 | content "\e77b"
650 | .ico-translation:before
651 | content "\e77c"
652 | .ico-unlock-fill:before
653 | content "\e77d"
654 | .ico-unlock:before
655 | content "\e77e"
656 | .ico-video:before
657 | content "\e77f"
658 | .ico-video-fill:before
659 | content "\e780"
660 | .ico-warning-fill:before
661 | content "\e73d"
662 | .ico-warning:before
663 | content "\e73e"
664 | .ico-workbench-fill:before
665 | content "\e781"
666 | .ico-workbench:before
667 | content "\e782"
668 | .ico-search:before
669 | content "\e783"
670 | .ico-search-fill:before
671 | content "\e784"
672 | .ico-goods-fill:before
673 | content "\e785"
674 | .ico-transaction-fill:before
675 | content "\e786"
676 | .ico-packup:before
677 | content "\e787"
678 | .ico-unfold:before
679 | content "\e788"
680 | .ico-financial-fill:before
681 | content "\e789"
682 | .ico-marketing-fill:before
683 | content "\e78a"
684 | .ico-shake:before
685 | content "\e78b"
686 | .ico-decoration-fill:before
687 | content "\e78c"
688 | .ico-loading:before
689 | content "\e616"
690 | .ico-empty:before
691 | content "\e875"
692 |
693 | @keyframes spin
694 | 0%
695 | transform rotate(0deg)
696 | to
697 | transform rotate(359deg)
--------------------------------------------------------------------------------