├── static └── .gitkeep ├── src ├── components │ └── .gitkeep ├── assets │ ├── theme │ │ ├── theme-darkblue │ │ │ ├── submenu.css │ │ │ ├── button-group.css │ │ │ ├── form-item.css │ │ │ ├── menu-item.css │ │ │ ├── radio-button.css │ │ │ ├── radio-group.css │ │ │ ├── tab-pane.css │ │ │ ├── breadcrumb-item.css │ │ │ ├── checkbox-group.css │ │ │ ├── collapse-item.css │ │ │ ├── dropdown-item.css │ │ │ ├── dropdown-menu.css │ │ │ ├── menu-item-group.css │ │ │ ├── fonts │ │ │ │ ├── element-icons.ttf │ │ │ │ └── element-icons.woff │ │ │ ├── steps.css │ │ │ ├── option-group.css │ │ │ ├── card.css │ │ │ ├── rate.css │ │ │ ├── spinner.css │ │ │ ├── badge.css │ │ │ ├── carousel-item.css │ │ │ ├── option.css │ │ │ ├── row.css │ │ │ ├── collapse.css │ │ │ ├── breadcrumb.css │ │ │ ├── scrollbar.css │ │ │ ├── alert.css │ │ │ ├── select-dropdown.css │ │ │ ├── loading.css │ │ │ ├── message.css │ │ │ ├── notification.css │ │ │ ├── dialog.css │ │ │ ├── form.css │ │ │ ├── tree.css │ │ │ ├── tag.css │ │ │ ├── carousel.css │ │ │ ├── progress.css │ │ │ ├── switch.css │ │ │ ├── popover.css │ │ │ ├── icon.css │ │ │ ├── step.css │ │ │ ├── tooltip.css │ │ │ ├── checkbox.css │ │ │ ├── reset.css │ │ │ └── radio.css │ │ └── theme-green │ │ │ ├── form-item.css │ │ │ ├── menu-item.css │ │ │ ├── submenu.css │ │ │ ├── tab-pane.css │ │ │ ├── breadcrumb-item.css │ │ │ ├── button-group.css │ │ │ ├── checkbox-group.css │ │ │ ├── collapse-item.css │ │ │ ├── dropdown-item.css │ │ │ ├── dropdown-menu.css │ │ │ ├── menu-item-group.css │ │ │ ├── radio-button.css │ │ │ ├── radio-group.css │ │ │ ├── fonts │ │ │ ├── element-icons.ttf │ │ │ └── element-icons.woff │ │ │ ├── steps.css │ │ │ ├── option-group.css │ │ │ ├── card.css │ │ │ ├── rate.css │ │ │ ├── spinner.css │ │ │ ├── badge.css │ │ │ ├── carousel-item.css │ │ │ ├── option.css │ │ │ ├── row.css │ │ │ ├── collapse.css │ │ │ ├── breadcrumb.css │ │ │ ├── scrollbar.css │ │ │ ├── alert.css │ │ │ ├── select-dropdown.css │ │ │ ├── loading.css │ │ │ ├── message.css │ │ │ ├── notification.css │ │ │ ├── dialog.css │ │ │ ├── form.css │ │ │ ├── tree.css │ │ │ ├── tag.css │ │ │ ├── carousel.css │ │ │ ├── progress.css │ │ │ ├── switch.css │ │ │ ├── popover.css │ │ │ ├── icon.css │ │ │ ├── step.css │ │ │ ├── tooltip.css │ │ │ ├── checkbox.css │ │ │ ├── reset.css │ │ │ └── radio.css │ ├── bg1.jpg │ ├── logo.png │ ├── logo4.png │ ├── user.png │ └── images │ │ ├── Center.png │ │ ├── case2.jpg │ │ ├── grid.jpg │ │ ├── guide.png │ │ ├── market.png │ │ ├── matrix.jpg │ │ ├── mobile.ico │ │ ├── user.jpg │ │ ├── contact.jpg │ │ ├── garbage3.png │ │ ├── login_bg.png │ │ ├── no_open.png │ │ └── dashboard.ico ├── styles │ ├── vars.scss │ ├── base │ │ ├── mixin │ │ │ ├── mobile.less │ │ │ ├── text.less │ │ │ ├── setOnepx.less │ │ │ └── setArrow.less │ │ ├── variable │ │ │ ├── weui-grid.less │ │ │ ├── weui-progress.less │ │ │ ├── weui-dialog.less │ │ │ ├── weui-msg.less │ │ │ ├── global.less │ │ │ ├── color.less │ │ │ ├── weui-cell.less │ │ │ └── weui-button.less │ │ ├── reset.less │ │ └── fn.less │ ├── widget │ │ ├── weui-flex │ │ │ └── weui-flex.less │ │ ├── weui-cell │ │ │ ├── weui-check.less │ │ │ ├── weui-form.less │ │ │ ├── weui-check │ │ │ │ ├── weui-check_common.less │ │ │ │ ├── weui-radio.less │ │ │ │ └── weui-checkbox.less │ │ │ ├── weui-cell_swiped.less │ │ │ ├── weui-access.less │ │ │ ├── weui-gallery.less │ │ │ ├── weui-form │ │ │ │ ├── weui-vcode.less │ │ │ │ ├── weui-select.less │ │ │ │ ├── weui-form_common.less │ │ │ │ └── weui-form-preview.less │ │ │ ├── weui-switch.less │ │ │ ├── weui-cell_global.less │ │ │ └── weui-uploader.less │ │ ├── weui-button │ │ │ ├── weui-btn_warn.less │ │ │ ├── weui-btn_primary.less │ │ │ ├── weui-btn_loading.less │ │ │ ├── weui-btn_default.less │ │ │ ├── weui-btn_disabled.less │ │ │ ├── weui-btn_plain.less │ │ │ ├── weui-btn_global.less │ │ │ └── weui-button.less │ │ ├── weui-tips │ │ │ ├── weui-mask.less │ │ │ ├── weui-badge.less │ │ │ ├── weui-toast.less │ │ │ ├── weui-loadmore.less │ │ │ ├── weui-actionsheet.less │ │ │ └── weui-dialog.less │ │ ├── weui-tab │ │ │ ├── weui-tab.less │ │ │ ├── weui-navbar.less │ │ │ └── weui-tabbar.less │ │ ├── weui-progress │ │ │ └── weui-progress.less │ │ ├── weui-panel │ │ │ └── weui-panel.less │ │ ├── weui-page │ │ │ ├── weui-article.less │ │ │ └── weui-msg.less │ │ ├── weui-footer │ │ │ └── weui-footer.less │ │ ├── weui-slider │ │ │ └── weui-slider.less │ │ ├── weui-animate │ │ │ └── weui-animate.less │ │ ├── weui-grid │ │ │ └── weui-grid.less │ │ ├── weui-agree │ │ │ └── weui-agree.less │ │ ├── weui-media-box │ │ │ └── weui-media-box.less │ │ ├── weui-picker │ │ │ └── weui-picker.less │ │ └── weui-searchbar │ │ │ └── weui-searchbar.less │ ├── main.scss │ ├── icon │ │ └── weui-icon_font.less │ ├── weui.less │ └── main.css ├── api │ ├── index.js │ └── api.js ├── mock │ ├── index.js │ └── data │ │ ├── infos.js │ │ ├── telephone.js │ │ └── user.js ├── modules │ ├── index │ │ ├── views │ │ │ ├── nav2 │ │ │ │ ├── Page5.vue │ │ │ │ └── Page4.vue │ │ │ ├── nav3 │ │ │ │ └── Page6.vue │ │ │ ├── 404.vue │ │ │ └── nav1 │ │ │ │ ├── Info.vue │ │ │ │ ├── user.vue │ │ │ │ └── Form.vue │ │ ├── index.html │ │ ├── index.js │ │ └── App.vue │ └── phone │ │ ├── phone │ │ ├── foot.vue │ │ ├── element.vue │ │ ├── list.vue │ │ ├── timeline.vue │ │ ├── telephone.vue │ │ ├── grid.vue │ │ └── UploadInfo.vue │ │ ├── Phone.vue │ │ ├── phone.html │ │ └── phone.js ├── vuex │ ├── getters.js │ ├── actions.js │ └── store.js ├── common │ ├── map.js │ └── js │ │ └── util.js └── route │ ├── routesPhone.js │ └── routes.js ├── .gitignore ├── .babelrc ├── config ├── prod.env.js ├── dev.env.js └── index.js ├── LICENSE ├── README.md └── package.json /static/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/components/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/submenu.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/form-item.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/menu-item.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/submenu.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/tab-pane.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/button-group.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/form-item.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/menu-item.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/radio-button.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/radio-group.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/tab-pane.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/breadcrumb-item.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/button-group.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/checkbox-group.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/collapse-item.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/dropdown-item.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/dropdown-menu.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/menu-item-group.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/radio-button.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/radio-group.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/breadcrumb-item.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/checkbox-group.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/collapse-item.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/dropdown-item.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/dropdown-menu.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/menu-item-group.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/styles/vars.scss: -------------------------------------------------------------------------------- 1 | $color-primary: #20a0ff;//#18c79c -------------------------------------------------------------------------------- /src/api/index.js: -------------------------------------------------------------------------------- 1 | import * as api from './api'; 2 | 3 | export default api; -------------------------------------------------------------------------------- /src/mock/index.js: -------------------------------------------------------------------------------- 1 | import mock from './mock'; 2 | 3 | export default mock; 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules/ 3 | npm-debug.log 4 | .editorconfig 5 | dist/ 6 | -------------------------------------------------------------------------------- /src/assets/bg1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/bg1.jpg -------------------------------------------------------------------------------- /src/modules/index/views/nav2/Page5.vue: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/vuex/getters.js: -------------------------------------------------------------------------------- 1 | //test 2 | export const getCount = state => { 3 | return state.count 4 | } 5 | -------------------------------------------------------------------------------- /src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/logo.png -------------------------------------------------------------------------------- /src/assets/logo4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/logo4.png -------------------------------------------------------------------------------- /src/assets/user.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/user.png -------------------------------------------------------------------------------- /src/assets/images/Center.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/images/Center.png -------------------------------------------------------------------------------- /src/assets/images/case2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/images/case2.jpg -------------------------------------------------------------------------------- /src/assets/images/grid.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/images/grid.jpg -------------------------------------------------------------------------------- /src/assets/images/guide.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/images/guide.png -------------------------------------------------------------------------------- /src/assets/images/market.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/images/market.png -------------------------------------------------------------------------------- /src/assets/images/matrix.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/images/matrix.jpg -------------------------------------------------------------------------------- /src/assets/images/mobile.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/images/mobile.ico -------------------------------------------------------------------------------- /src/assets/images/user.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/images/user.jpg -------------------------------------------------------------------------------- /src/modules/index/views/nav3/Page6.vue: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["es2015", "stage-2"], 3 | "plugins": ["transform-runtime"], 4 | "comments": false 5 | } 6 | -------------------------------------------------------------------------------- /config/prod.env.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | NODE_ENV: '"production"', 3 | API_ROOT: '"//xawxfw.xacg.gov.cn/Urban"' 4 | } 5 | -------------------------------------------------------------------------------- /src/assets/images/contact.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/images/contact.jpg -------------------------------------------------------------------------------- /src/assets/images/garbage3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/images/garbage3.png -------------------------------------------------------------------------------- /src/assets/images/login_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/images/login_bg.png -------------------------------------------------------------------------------- /src/assets/images/no_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/images/no_open.png -------------------------------------------------------------------------------- /src/assets/images/dashboard.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/images/dashboard.ico -------------------------------------------------------------------------------- /src/styles/base/mixin/mobile.less: -------------------------------------------------------------------------------- 1 | .setTapColor(@c:rgba(0,0,0,0)) { 2 | -webkit-tap-highlight-color: @c; 3 | } 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /src/styles/base/variable/weui-grid.less: -------------------------------------------------------------------------------- 1 | @weuiGridBorderColor:#D9D9D9; 2 | @weuiGridFontSize: 14px; 3 | @weuiGridIconSize: 28px; 4 | @weuiGridColumnCount: 3; -------------------------------------------------------------------------------- /src/styles/widget/weui-flex/weui-flex.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-flex { 4 | display: flex; 5 | } 6 | .weui-flex__item{ 7 | flex: 1; 8 | } -------------------------------------------------------------------------------- /src/assets/theme/theme-green/fonts/element-icons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/theme/theme-green/fonts/element-icons.ttf -------------------------------------------------------------------------------- /src/assets/theme/theme-green/fonts/element-icons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/theme/theme-green/fonts/element-icons.woff -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/fonts/element-icons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/theme/theme-darkblue/fonts/element-icons.ttf -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/fonts/element-icons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chen1218chen/vue-cli-multi-page/HEAD/src/assets/theme/theme-darkblue/fonts/element-icons.woff -------------------------------------------------------------------------------- /src/vuex/actions.js: -------------------------------------------------------------------------------- 1 | //test 2 | export const increment = ({commit}) => { 3 | commit('INCREMENT') 4 | } 5 | export const decrement = ({commit}) => { 6 | commit('DECREMENT') 7 | } 8 | -------------------------------------------------------------------------------- /src/styles/widget/weui-cell/weui-check.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | @import "./weui-check/weui-check_common"; 3 | @import "./weui-check/weui-radio"; 4 | @import "./weui-check/weui-checkbox"; 5 | -------------------------------------------------------------------------------- /src/styles/base/variable/weui-progress.less: -------------------------------------------------------------------------------- 1 | @weuiProgressBg: #EBEBEB; 2 | @weuiProgressColor: #09BB07; 3 | @weuiProgressHeight: 3px; 4 | @weuiProgressCloseBg: #EF4F4F; 5 | @weuiProgressActiveBg: #C13E3E; 6 | -------------------------------------------------------------------------------- /config/dev.env.js: -------------------------------------------------------------------------------- 1 | var merge = require('webpack-merge') 2 | var prodEnv = require('./prod.env') 3 | 4 | module.exports = merge(prodEnv, { 5 | NODE_ENV: '"development"', 6 | API_ROOT: '"//127.0.0.1/Urban"' 7 | }) 8 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/steps.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-steps{font-size:0}.el-steps>:last-child .el-step__line{display:none}.el-steps.is-horizontal{white-space:nowrap}.el-steps.is-horizontal.is-center{text-align:center} -------------------------------------------------------------------------------- /src/styles/base/variable/weui-dialog.less: -------------------------------------------------------------------------------- 1 | @weuiDialogBackgroundColor: #FFFFFF; 2 | @weuiDialogLineColor: #D5D5D6; 3 | @weuiDialogLinkColor: #3CC51F; 4 | @weuiDialogLinkActiveBc: #EEEEEE; 5 | @weuiDialogGapWidth: 1.6em; 6 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/steps.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-steps{font-size:0}.el-steps>:last-child .el-step__line{display:none}.el-steps.is-horizontal{white-space:nowrap}.el-steps.is-horizontal.is-center{text-align:center} -------------------------------------------------------------------------------- /src/styles/widget/weui-cell/weui-form.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | @import "./weui-form/weui-form_common"; 3 | @import "./weui-form/weui-form-preview"; 4 | @import "./weui-form/weui-select"; 5 | @import "./weui-form/weui-vcode"; -------------------------------------------------------------------------------- /src/styles/base/variable/weui-msg.less: -------------------------------------------------------------------------------- 1 | @weuiMsgPaddingTop:36px; 2 | @weuiMsgIconGap:30px; 3 | @weuiMsgTitleGap:5px; 4 | @weuiMsgTextGap:25px; 5 | @weuiMsgOprGap:25px; 6 | @weuiMsgExtraAreaGap:15px; 7 | @weuiMsgExtraAreaOfMinHeight:438px; -------------------------------------------------------------------------------- /src/styles/base/variable/global.less: -------------------------------------------------------------------------------- 1 | // font 2 | @weuiFontEN:-apple-system-font,"Helvetica Neue"; 3 | @weuiFontCN:"PingFang SC","Hiragino Sans GB","Microsoft YaHei"; 4 | @weuiFontSans:sans-serif; 5 | @weuiFontDefault:@weuiFontEN,@weuiFontSans; -------------------------------------------------------------------------------- /src/modules/phone/phone/foot.vue: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /src/modules/phone/Phone.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 15 | 16 | -------------------------------------------------------------------------------- /src/modules/index/views/404.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/option-group.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-select-group{margin:0;padding:0}.el-select-group .el-select-dropdown__item{padding-left:20px}.el-select-group__wrap{list-style:none;margin:0;padding:0}.el-select-group__title{padding-left:10px;font-size:12px;color:#999;height:30px;line-height:30px} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/option-group.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-select-group{margin:0;padding:0}.el-select-group .el-select-dropdown__item{padding-left:20px}.el-select-group__wrap{list-style:none;margin:0;padding:0}.el-select-group__title{padding-left:10px;font-size:12px;color:#999;height:30px;line-height:30px} -------------------------------------------------------------------------------- /src/styles/widget/weui-cell/weui-check/weui-check_common.less: -------------------------------------------------------------------------------- 1 | @import "../../../base/fn"; 2 | 3 | .weui-check__label { 4 | .setTapColor(); 5 | &:active { 6 | background-color: #ECECEC; 7 | } 8 | } 9 | 10 | .weui-check{ 11 | position: absolute; 12 | left: -9999em; 13 | } 14 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/card.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-card{border:1px solid rgb(209, 229, 227);border-radius:4px;background-color:#fff;overflow:hidden;box-shadow:0 2px 4px 0 rgba(0,0,0,.12),0 0 6px 0 rgba(0,0,0,.04)}.el-card__header{padding:18px 20px;border-bottom:1px solid rgb(209, 229, 227);box-sizing:border-box}.el-card__body{padding:20px} -------------------------------------------------------------------------------- /src/modules/index/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | vueadmin 8 | 9 | 10 | 11 |
12 |
13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/card.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-card{border:1px solid rgb(209, 219, 229);border-radius:4px;background-color:#fff;overflow:hidden;box-shadow:0 2px 4px 0 rgba(0,0,0,.12),0 0 6px 0 rgba(0,0,0,.04)}.el-card__header{padding:18px 20px;border-bottom:1px solid rgb(209, 219, 229);box-sizing:border-box}.el-card__body{padding:20px} -------------------------------------------------------------------------------- /src/styles/widget/weui-button/weui-btn_warn.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-btn_warn { 4 | background-color: @weuiBtnWarnBg; 5 | &:not(.weui-btn_disabled):visited { 6 | color: @weuiBtnFontColor; 7 | } 8 | &:not(.weui-btn_disabled):active { 9 | color: @weuiBtnActiveFontColor; 10 | background-color: @weuiBtnWarnActiveBg; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/styles/widget/weui-button/weui-btn_primary.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-btn_primary { 4 | background-color: @weuiBtnPrimaryBg; 5 | &:not(.weui-btn_disabled):visited { 6 | color: @weuiBtnFontColor; 7 | } 8 | &:not(.weui-btn_disabled):active { 9 | color: @weuiBtnActiveFontColor; 10 | background-color: @weuiBtnPrimaryActiveBg; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/styles/base/reset.less: -------------------------------------------------------------------------------- 1 | @import "fn"; 2 | 3 | html { 4 | -ms-text-size-adjust: 100%; 5 | -webkit-text-size-adjust: 100%; 6 | } 7 | 8 | body { 9 | line-height: 1.6; 10 | font-family: @weuiFontDefault; 11 | } 12 | 13 | * { 14 | margin: 0; 15 | padding: 0; 16 | } 17 | 18 | a img { 19 | border: 0; 20 | } 21 | 22 | a { 23 | text-decoration: none; 24 | .setTapColor(); 25 | } -------------------------------------------------------------------------------- /src/modules/phone/phone.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | vuemobile 8 | 9 | 10 | 11 |
12 | 13 |
14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /src/styles/widget/weui-tips/weui-mask.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-mask { 4 | position: fixed; 5 | z-index: 1000; 6 | top: 0; 7 | right: 0; 8 | left: 0; 9 | bottom: 0; 10 | background: rgba(0, 0, 0, .6); 11 | } 12 | 13 | .weui-mask_transparent{ 14 | position: fixed; 15 | z-index: 1000; 16 | top: 0; 17 | right: 0; 18 | left: 0; 19 | bottom: 0; 20 | } -------------------------------------------------------------------------------- /src/common/map.js: -------------------------------------------------------------------------------- 1 | export function MP(ak) { 2 | return new Promise(function (resolve, reject) { 3 | window.init = function () { 4 | resolve(BMap) 5 | } 6 | var script = document.createElement("script"); 7 | script.type = "text/javascript"; 8 | script.src = "http://api.map.baidu.com/api?v=2.0&ak="+ak+"&callback=init"; 9 | script.onerror = reject; 10 | document.head.appendChild(script); 11 | }) 12 | } -------------------------------------------------------------------------------- /src/styles/widget/weui-tab/weui-tab.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | @import "weui-tabbar"; 3 | @import "weui-navbar"; 4 | 5 | .weui-tab { 6 | position: relative; 7 | height: 100%; 8 | } 9 | 10 | .weui-tab__panel { 11 | box-sizing: border-box; 12 | height: 100%; 13 | padding-bottom: 50px; 14 | overflow: auto; 15 | -webkit-overflow-scrolling: touch; 16 | } 17 | .weui-tab__content{ 18 | display: none; 19 | } -------------------------------------------------------------------------------- /src/styles/widget/weui-button/weui-btn_loading.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-btn_loading{ 4 | .weui-loading{ 5 | margin:-.2em .34em 0 0; 6 | } 7 | &.weui-btn_primary, &.weui-btn_warn { 8 | color: @weuiBtnActiveFontColor; 9 | } 10 | &.weui-btn_primary{ 11 | background-color: @weuiBtnPrimaryActiveBg; 12 | } 13 | &.weui-btn_warn{ 14 | background-color: @weuiBtnWarnActiveBg; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /src/styles/widget/weui-button/weui-btn_default.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-btn_default { 4 | color: @weuiBtnDefaultFontColor; 5 | background-color: @weuiBtnDefaultBg; 6 | &:not(.weui-btn_disabled):visited { 7 | color: @weuiBtnDefaultFontColor; 8 | } 9 | &:not(.weui-btn_disabled):active { 10 | color: @weuiBtnDefaultActiveFontColor; 11 | background-color: @weuiBtnDefaultActiveBg; 12 | } 13 | } -------------------------------------------------------------------------------- /src/styles/widget/weui-tips/weui-badge.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-badge { 4 | display: inline-block; 5 | padding: .15em .4em; 6 | min-width: 8px; 7 | border-radius: 18px; 8 | background-color: #F43530; 9 | color: #FFFFFF; 10 | line-height: 1.2; 11 | text-align: center; 12 | font-size: 12px; 13 | vertical-align: middle; 14 | } 15 | .weui-badge_dot { 16 | padding: .4em; 17 | min-width: 0; 18 | } -------------------------------------------------------------------------------- /src/mock/data/infos.js: -------------------------------------------------------------------------------- 1 | import Mock from 'mockjs'; 2 | 3 | const Infos = []; 4 | 5 | for (let i = 0; i < 50; i++) { 6 | Infos.push(Mock.mock({ 7 | id: Mock.Random.guid(), 8 | name: Mock.Random.cname(), 9 | addr: Mock.mock('@county(true)'), 10 | 'age|18-60': 1, 11 | dateTime: Mock.Random.datetime(), 12 | sex: Mock.Random.integer(0, 1), 13 | picturePath: Mock.Random.url('http', 'chen1218chen.com') 14 | })); 15 | } 16 | 17 | export { Infos }; 18 | -------------------------------------------------------------------------------- /src/styles/base/fn.less: -------------------------------------------------------------------------------- 1 | // mixin 2 | @import "./mixin/mobile"; 3 | @import "./mixin/setOnepx"; 4 | @import "./mixin/setArrow"; 5 | @import "./mixin/text"; 6 | 7 | 8 | // variable 9 | @import "./variable/global"; 10 | @import "./variable/color"; 11 | 12 | 13 | @import "./variable/weui-cell"; 14 | @import "./variable/weui-button"; 15 | @import "./variable/weui-msg"; 16 | @import "./variable/weui-grid"; 17 | @import "./variable/weui-progress"; 18 | @import "./variable/weui-dialog"; -------------------------------------------------------------------------------- /src/styles/widget/weui-button/weui-btn_disabled.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-btn_disabled { 4 | color: @weuiBtnDisabledFontColor; 5 | &.weui-btn_default { 6 | color: @weuiBtnDefaultDisabledFontColor; 7 | background-color: @weuiBtnDefaultDisabledBg; 8 | } 9 | &.weui-btn_primary { 10 | background-color: @weuiBtnPrimaryDisabledBg; 11 | } 12 | &.weui-btn_warn { 13 | background-color: @weuiBtnwarnDisabledBg; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/styles/base/variable/color.less: -------------------------------------------------------------------------------- 1 | // color 2 | @weuiColorPrimary: #1AAD19; 3 | @weuiColorWarn: #E64340; 4 | 5 | // link 6 | @weuiLinkColorDefault: #586C94; 7 | 8 | // background 9 | @weuiBgColorDefault: #EFEFF4; 10 | @weuiBgColorActive: #ECECEC; 11 | 12 | // line 13 | @weuiLineColorLight: #E5E5E5; 14 | @weuiLineColorDark: #BCBAB6; 15 | 16 | // text 17 | @weuiTextColorTitle: #000000; 18 | @weuiTextColorTips: #B2B2B2; 19 | @weuiTextColorWarn: @weuiColorWarn; 20 | @weuiTextColorGray: #999999; 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/rate.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-rate__icon,.el-rate__item{position:relative;display:inline-block}.el-rate{height:20px;line-height:1}.el-rate__item{font-size:0;vertical-align:middle}.el-rate__icon{font-size:18px;margin-right:6px;color:rgb(191, 217, 214);transition:.3s}.el-rate__decimal,.el-rate__icon .path2{position:absolute;top:0;left:0}.el-rate__icon.hover{-ms-transform:scale(1.15);transform:scale(1.15)}.el-rate__decimal{display:inline-block;overflow:hidden}.el-rate__text{font-size:14px;vertical-align:middle} -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/rate.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-rate__icon,.el-rate__item{position:relative;display:inline-block}.el-rate{height:20px;line-height:1}.el-rate__item{font-size:0;vertical-align:middle}.el-rate__icon{font-size:18px;margin-right:6px;color:rgb(191, 203, 217);transition:.3s}.el-rate__decimal,.el-rate__icon .path2{position:absolute;top:0;left:0}.el-rate__icon.hover{-ms-transform:scale(1.15);transform:scale(1.15)}.el-rate__decimal{display:inline-block;overflow:hidden}.el-rate__text{font-size:14px;vertical-align:middle} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/spinner.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-time-spinner{width:100%;white-space:nowrap}.el-spinner{display:inline-block;vertical-align:middle}.el-spinner-inner{animation:rotate 2s linear infinite;width:50px;height:50px}.el-spinner-inner .path{stroke:#ececec;stroke-linecap:round;animation:dash 1.5s ease-in-out infinite}@keyframes rotate{100%{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}100%{stroke-dasharray:90,150;stroke-dashoffset:-124}} -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/spinner.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-time-spinner{width:100%;white-space:nowrap}.el-spinner{display:inline-block;vertical-align:middle}.el-spinner-inner{animation:rotate 2s linear infinite;width:50px;height:50px}.el-spinner-inner .path{stroke:#ececec;stroke-linecap:round;animation:dash 1.5s ease-in-out infinite}@keyframes rotate{100%{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}100%{stroke-dasharray:90,150;stroke-dashoffset:-124}} -------------------------------------------------------------------------------- /src/styles/widget/weui-progress/weui-progress.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-progress { 4 | display: flex; 5 | align-items: center; 6 | } 7 | 8 | .weui-progress__bar { 9 | background-color: @weuiProgressBg; 10 | height: @weuiProgressHeight; 11 | flex: 1; 12 | } 13 | 14 | .weui-progress__inner-bar { 15 | width: 0; 16 | height: 100%; 17 | background-color: @weuiProgressColor; 18 | } 19 | 20 | .weui-progress__opr { 21 | display: block; 22 | margin-left: 15px; 23 | font-size: 0; 24 | } -------------------------------------------------------------------------------- /src/vuex/store.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Vuex from 'vuex' 3 | import * as actions from './actions' 4 | import * as getters from './getters' 5 | 6 | Vue.use(Vuex) 7 | 8 | // 应用初始状态 9 | const state = { 10 | count: 10 11 | } 12 | 13 | // 定义所需的 mutations 14 | const mutations = { 15 | INCREMENT(state) { 16 | state.count++ 17 | }, 18 | DECREMENT(state) { 19 | state.count-- 20 | } 21 | } 22 | 23 | // 创建 store 实例 24 | export default new Vuex.Store({ 25 | actions, 26 | getters, 27 | state, 28 | mutations 29 | }) -------------------------------------------------------------------------------- /src/mock/data/telephone.js: -------------------------------------------------------------------------------- 1 | import Mock from 'mockjs'; 2 | 3 | const Telephone = []; 4 | 5 | for (let i = 0; i < 20; i++) { 6 | Telephone.push(Mock.mock({ 7 | id: Mock.Random.guid(), 8 | //name: Mock.Random.cname(), 9 | name: Mock.Random.city(), 10 | lat: Mock.mock({ 11 | "number|3-53.5-6": 1 12 | }), 13 | lon: Mock.mock({ 14 | "number|73-153.5-6": 1 15 | }), 16 | telephone: Mock.Random.string('number', 11), 17 | address: Mock.mock('@county(true)'), 18 | description: Mock.mock('@csentence'), 19 | })); 20 | } 21 | 22 | export { Telephone }; 23 | -------------------------------------------------------------------------------- /src/styles/base/mixin/text.less: -------------------------------------------------------------------------------- 1 | .ellipsis(@w:auto) { 2 | width: @w; 3 | overflow: hidden; 4 | text-overflow: ellipsis; 5 | white-space: nowrap; 6 | word-wrap: normal; 7 | } 8 | 9 | .ellipsisLn(@line) { 10 | overflow: hidden; 11 | text-overflow: ellipsis; 12 | display: -webkit-box; 13 | -webkit-box-orient: vertical; 14 | -webkit-line-clamp: @line; 15 | } 16 | .text_wrap() { 17 | word-wrap:break-word; 18 | word-break:break-all; 19 | } 20 | .hyphens() { 21 | word-wrap:break-word; 22 | -webkit-hyphens:auto; 23 | hyphens:auto; 24 | } -------------------------------------------------------------------------------- /src/assets/theme/theme-green/badge.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-badge{position:relative;vertical-align:middle;display:inline-block}.el-badge__content{background-color:#ff4949;border-radius:10px;color:#fff;display:inline-block;font-size:12px;height:18px;line-height:18px;padding:0 6px;text-align:center;white-space:nowrap;border:1px solid #fff}.el-badge__content.is-dot{width:8px;height:8px;padding:0;right:0;border-radius:50%}.el-badge__content.is-fixed{top:0;right:10px;position:absolute;-ms-transform:translateY(-50%) translateX(100%);transform:translateY(-50%) translateX(100%)}.el-badge__content.is-fixed.is-dot{right:5px} -------------------------------------------------------------------------------- /src/modules/phone/phone/element.vue: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/badge.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-badge{position:relative;vertical-align:middle;display:inline-block}.el-badge__content{background-color:#ff4949;border-radius:10px;color:#fff;display:inline-block;font-size:12px;height:18px;line-height:18px;padding:0 6px;text-align:center;white-space:nowrap;border:1px solid #fff}.el-badge__content.is-dot{width:8px;height:8px;padding:0;right:0;border-radius:50%}.el-badge__content.is-fixed{top:0;right:10px;position:absolute;-ms-transform:translateY(-50%) translateX(100%);transform:translateY(-50%) translateX(100%)}.el-badge__content.is-fixed.is-dot{right:5px} -------------------------------------------------------------------------------- /src/styles/widget/weui-cell/weui-check/weui-radio.less: -------------------------------------------------------------------------------- 1 | @import "../../../base/fn"; 2 | 3 | // method2 accessbility 4 | .weui-cells_radio{ 5 | .weui-cell__ft { 6 | padding-left: @weuiCellInnerGapH; 7 | } 8 | } 9 | .weui-check { 10 | // radio 11 | .weui-cells_radio & { 12 | &:checked { 13 | & + .weui-icon-checked { 14 | &:before { 15 | display: block; 16 | content: '\EA08'; 17 | color: #09BB07; 18 | font-size: 16px; 19 | } 20 | } 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /src/assets/theme/theme-green/carousel-item.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-carousel__item,.el-carousel__mask{position:absolute;height:100%;top:0;left:0}.el-carousel__item{width:100%;display:inline-block;transition:.4s ease-in-out;overflow:hidden;z-index:0}.el-carousel__item.is-active{z-index:2}.el-carousel__item--card{width:50%}.el-carousel__item--card.is-in-stage{cursor:pointer;z-index:1}.el-carousel__item--card.is-in-stage.is-hover .el-carousel__mask,.el-carousel__item--card.is-in-stage:hover .el-carousel__mask{opacity:.12}.el-carousel__item--card.is-active{z-index:2}.el-carousel__mask{width:100%;background-color:#fff;opacity:.24;transition:.2s} -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/carousel-item.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-carousel__item,.el-carousel__mask{position:absolute;height:100%;top:0;left:0}.el-carousel__item{width:100%;display:inline-block;transition:.4s ease-in-out;overflow:hidden;z-index:0}.el-carousel__item.is-active{z-index:2}.el-carousel__item--card{width:50%}.el-carousel__item--card.is-in-stage{cursor:pointer;z-index:1}.el-carousel__item--card.is-in-stage.is-hover .el-carousel__mask,.el-carousel__item--card.is-in-stage:hover .el-carousel__mask{opacity:.12}.el-carousel__item--card.is-active{z-index:2}.el-carousel__mask{width:100%;background-color:#fff;opacity:.24;transition:.2s} -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/option.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-select-dropdown__item{font-size:14px;padding:8px 10px;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:rgb(72, 87, 106);height:36px;line-height:1.5;box-sizing:border-box;cursor:pointer}.el-select-dropdown__item.hover{background-color:rgb(228, 232, 241)}.el-select-dropdown__item.selected{color:#fff;background-color:#1d8ce0}.el-select-dropdown__item.selected.hover{background-color:rgb(26, 123, 197)}.el-select-dropdown__item span{line-height:1.5!important}.el-select-dropdown__item.is-disabled{color:rgb(191, 203, 217);cursor:not-allowed}.el-select-dropdown__item.is-disabled:hover{background-color:#fff} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/option.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-select-dropdown__item{font-size:14px;padding:8px 10px;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:rgb(72, 106, 103);height:36px;line-height:1.5;box-sizing:border-box;cursor:pointer}.el-select-dropdown__item.hover{background-color:rgb(228, 241, 241)}.el-select-dropdown__item.selected{color:#fff;background-color:#18c79c}.el-select-dropdown__item.selected.hover{background-color:rgb(21, 175, 137)}.el-select-dropdown__item span{line-height:1.5!important}.el-select-dropdown__item.is-disabled{color:rgb(191, 217, 214);cursor:not-allowed}.el-select-dropdown__item.is-disabled:hover{background-color:#fff} -------------------------------------------------------------------------------- /src/modules/phone/phone/list.vue: -------------------------------------------------------------------------------- 1 | 14 | 32 | -------------------------------------------------------------------------------- /src/styles/base/variable/weui-cell.less: -------------------------------------------------------------------------------- 1 | @weuiCellBg:#FFFFFF; 2 | @weuiCellBorderColor:#e5e5e5; 3 | @weuiCellGapV:10px; 4 | @weuiCellGapH:15px; 5 | @weuiCellInnerGapH:.35em; 6 | @weuiCellHeight: 45px; 7 | @weuiCellFontSize:17px; 8 | @weuiCellTipsFontSize:14px; 9 | @weuiCellLabelWidth:105px; 10 | 11 | @weuiCellLineHeight: unit((@weuiCellHeight - 2 * @weuiCellGapV) / @weuiCellFontSize); // 高度减去上下padding的行高 12 | @weuiCellsMarginTop:unit(20 / @weuiCellFontSize, em); 13 | 14 | // weui switch 15 | @weuiSwitchHeight: 32px; 16 | 17 | // weui uploader 18 | @weuiUploaderBorderColor:#D9D9D9; 19 | @weuiUploaderActiveBorderColor:#999999; 20 | @weuiUploaderFileSpacing: 9px; 21 | @weuiUploaderSize: 79px; 22 | @weuiUploaderBorderWidth: 1px; -------------------------------------------------------------------------------- /src/assets/theme/theme-green/row.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-row:after,.el-row:before{display:table;content:""}.el-row:after{clear:both}.el-row{position:relative;box-sizing:border-box}.el-row--flex{display:-ms-flexbox;display:flex}.el-row--flex:after,.el-row--flex:before{display:none}.el-row--flex.is-align-bottom{-ms-flex-align:end;align-items:flex-end}.el-row--flex.is-align-middle{-ms-flex-align:center;align-items:center}.el-row--flex.is-justify-space-around{-ms-flex-pack:distribute;justify-content:space-around}.el-row--flex.is-justify-space-between{-ms-flex-pack:justify;justify-content:space-between}.el-row--flex.is-justify-end{-ms-flex-pack:end;justify-content:flex-end}.el-row--flex.is-justify-center{-ms-flex-pack:center;justify-content:center} -------------------------------------------------------------------------------- /src/styles/widget/weui-panel/weui-panel.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | 4 | .weui-panel { 5 | background-color: #FFFFFF; 6 | margin-top: 10px; 7 | &:first-child { 8 | margin-top: 0; 9 | } 10 | 11 | position: relative; 12 | overflow: hidden; 13 | &:before { 14 | .setTopLine(@weuiLineColorLight); 15 | } 16 | &:after { 17 | .setBottomLine(@weuiLineColorLight); 18 | } 19 | } 20 | 21 | .weui-panel__hd { 22 | padding: 14px 15px 10px; 23 | color: @weuiTextColorGray; 24 | font-size: 13px; 25 | position: relative; 26 | &:after { 27 | .setBottomLine(@weuiLineColorLight); 28 | left: 15px; 29 | } 30 | } 31 | 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/row.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-row:after,.el-row:before{display:table;content:""}.el-row:after{clear:both}.el-row{position:relative;box-sizing:border-box}.el-row--flex{display:-ms-flexbox;display:flex}.el-row--flex:after,.el-row--flex:before{display:none}.el-row--flex.is-align-bottom{-ms-flex-align:end;align-items:flex-end}.el-row--flex.is-align-middle{-ms-flex-align:center;align-items:center}.el-row--flex.is-justify-space-around{-ms-flex-pack:distribute;justify-content:space-around}.el-row--flex.is-justify-space-between{-ms-flex-pack:justify;justify-content:space-between}.el-row--flex.is-justify-end{-ms-flex-pack:end;justify-content:flex-end}.el-row--flex.is-justify-center{-ms-flex-pack:center;justify-content:center} -------------------------------------------------------------------------------- /src/styles/widget/weui-page/weui-article.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-article { 4 | padding: 20px 15px; 5 | font-size: 15px; 6 | section { 7 | margin-bottom: 1.5em; 8 | } 9 | h1 { 10 | font-size: 18px; 11 | font-weight:400; 12 | margin-bottom: .9em; 13 | } 14 | h2 { 15 | font-size: 16px; 16 | font-weight:400; 17 | margin-bottom: .34em; 18 | } 19 | h3 { 20 | font-weight:400; 21 | font-size: 15px; 22 | margin-bottom: .34em; 23 | } 24 | * { 25 | max-width: 100%; 26 | box-sizing: border-box; 27 | word-wrap: break-word; 28 | } 29 | p { 30 | margin: 0 0 .8em; 31 | } 32 | } -------------------------------------------------------------------------------- /src/mock/data/user.js: -------------------------------------------------------------------------------- 1 | import Mock from 'mockjs'; 2 | const LoginUsers = [ 3 | { 4 | id: 1, 5 | username: 'admin', 6 | password: '123456', 7 | avatar: 'https://raw.githubusercontent.com/taylorchen709/markdown-images/master/vueadmin/user.png', 8 | name: '张某某' 9 | } 10 | ]; 11 | 12 | const Users = []; 13 | 14 | for (let i = 0; i < 86; i++) { 15 | Users.push(Mock.mock({ 16 | id: Mock.Random.guid(), 17 | name: Mock.Random.cname(), 18 | telephone: Mock.Random.string('number', 11), 19 | password: Mock.Random.string('number',6), 20 | addr: Mock.mock('@county(true)'), 21 | 'age|18-60': 1, 22 | birth: Mock.Random.date(), 23 | sex: Mock.Random.integer(0, 1) 24 | })); 25 | } 26 | 27 | export { LoginUsers, Users }; 28 | -------------------------------------------------------------------------------- /src/styles/widget/weui-cell/weui-check/weui-checkbox.less: -------------------------------------------------------------------------------- 1 | @import "../../../base/fn"; 2 | 3 | .weui-cells_checkbox { 4 | .weui-cell__hd { 5 | padding-right: @weuiCellInnerGapH; 6 | } 7 | .weui-icon-checked { 8 | &:before { 9 | content: '\EA01'; 10 | color: #C9C9C9; 11 | font-size: 23px; 12 | display: block; 13 | } 14 | } 15 | } 16 | 17 | // method2 accessbility 18 | .weui-check { 19 | // checkbox 20 | .weui-cells_checkbox & { 21 | &:checked { 22 | & + .weui-icon-checked { 23 | &:before { 24 | content: '\EA06'; 25 | color: #09BB07; 26 | } 27 | } 28 | } 29 | } 30 | } -------------------------------------------------------------------------------- /src/styles/widget/weui-cell/weui-cell_swiped.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-cell_swiped { 4 | display: block; 5 | padding: 0; 6 | > .weui-cell__bd { 7 | position: relative; 8 | z-index: 1; 9 | background-color: #FFFFFF; 10 | } 11 | > .weui-cell__ft { 12 | position: absolute; 13 | right: 0; 14 | top: 0; 15 | bottom: 0; 16 | display: flex; 17 | color: #FFFFFF; 18 | } 19 | } 20 | .weui-swiped-btn { 21 | display: block; 22 | padding: @weuiCellGapV 1em; 23 | line-height: @weuiCellLineHeight; 24 | color: inherit; 25 | } 26 | .weui-swiped-btn_default { 27 | background-color: #C7C7CC; 28 | } 29 | .weui-swiped-btn_warn { 30 | background-color: #FF3B30; 31 | } -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/collapse.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-collapse{border:1px solid rgb(223, 230, 236);border-radius:0}.el-collapse-item:last-child{margin-bottom:-1px}.el-collapse-item.is-active>.el-collapse-item__header .el-collapse-item__header__arrow{-ms-transform:rotate(90deg);transform:rotate(90deg)}.el-collapse-item__header{height:43px;line-height:43px;padding-left:15px;background-color:#fff;color:rgb(72, 87, 106);cursor:pointer;border-bottom:1px solid rgb(223, 230, 236);font-size:13px}.el-collapse-item__header__arrow{margin-right:8px;transition:transform .3s}.el-collapse-item__wrap{will-change:height;background-color:rgb(250, 253, 254);overflow:hidden;box-sizing:border-box;border-bottom:1px solid rgb(223, 230, 236)}.el-collapse-item__content{padding:10px 15px;font-size:13px;color:rgb(31, 45, 61);line-height:1.769230769230769} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/collapse.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-collapse{border:1px solid rgb(223, 236, 234);border-radius:0}.el-collapse-item:last-child{margin-bottom:-1px}.el-collapse-item.is-active>.el-collapse-item__header .el-collapse-item__header__arrow{-ms-transform:rotate(90deg);transform:rotate(90deg)}.el-collapse-item__header{height:43px;line-height:43px;padding-left:15px;background-color:#fff;color:rgb(72, 106, 103);cursor:pointer;border-bottom:1px solid rgb(223, 236, 234);font-size:13px}.el-collapse-item__header__arrow{margin-right:8px;transition:transform .3s}.el-collapse-item__wrap{will-change:height;background-color:rgb(250, 254, 253);overflow:hidden;box-sizing:border-box;border-bottom:1px solid rgb(223, 236, 234)}.el-collapse-item__content{padding:10px 15px;font-size:13px;color:rgb(31, 61, 57);line-height:1.769230769230769} -------------------------------------------------------------------------------- /src/styles/widget/weui-tips/weui-toast.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-toast { 4 | position: fixed; 5 | z-index: 5000; 6 | width: 7.6em; 7 | min-height: 7.6em; 8 | top: 180px; 9 | left: 50%; 10 | margin-left: -3.8em; 11 | background: rgba(17,17,17,0.7); 12 | text-align: center; 13 | border-radius: 5px; 14 | color: #FFFFFF; 15 | } 16 | .weui-icon_toast { 17 | margin: 22px 0 0; 18 | display: block; 19 | &.weui-icon-success-no-circle{ 20 | &:before { 21 | color: #FFFFFF; 22 | font-size: 55px; 23 | } 24 | } 25 | &.weui-loading{ 26 | margin:30px 0 0; 27 | width:38px; 28 | height:38px; 29 | vertical-align: baseline; 30 | } 31 | } 32 | 33 | .weui-toast__content { 34 | margin: 0 0 15px; 35 | } 36 | -------------------------------------------------------------------------------- /src/styles/widget/weui-cell/weui-access.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-cell_access { 4 | .setTapColor(); 5 | color: inherit; 6 | &:active { 7 | background-color: #ECECEC; 8 | } 9 | .weui-cell__ft { 10 | padding-right: 13px; 11 | position: relative; 12 | &:after { 13 | content: " "; 14 | .setArrow(right, 6px, #C8C8CD, 2px); 15 | position: absolute; 16 | top: 50%; 17 | margin-top: -4px; 18 | right: 2px; 19 | } 20 | } 21 | } 22 | .weui-cell_link{ 23 | color: @weuiLinkColorDefault; 24 | font-size: 14px; 25 | 26 | // 由于weui-cell:first-child的:before为隐藏,所以这里要重新显示出来 27 | &:first-child{ 28 | &:before{ 29 | display: block; 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /src/styles/widget/weui-cell/weui-gallery.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | @weuiGalleryOprHeight: 60px; 4 | .weui-gallery { 5 | display: none; 6 | position: fixed; 7 | top: 0; 8 | right: 0; 9 | bottom: 0; 10 | left: 0; 11 | background-color: #000000; 12 | z-index: 1000; 13 | } 14 | .weui-gallery__img { 15 | position: absolute; 16 | top: 0; 17 | right: 0; 18 | bottom: @weuiGalleryOprHeight; 19 | left: 0; 20 | background: center center no-repeat; 21 | background-size: contain; 22 | } 23 | .weui-gallery__opr { 24 | position: absolute; 25 | right: 0; 26 | bottom: 0; 27 | left: 0; 28 | background-color: #0D0D0D; 29 | color: #FFFFFF; 30 | line-height: @weuiGalleryOprHeight; 31 | text-align: center; 32 | } 33 | .weui-gallery__del { 34 | display: block; 35 | } -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/breadcrumb.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-breadcrumb{font-size:13px;line-height:1}.el-breadcrumb:after,.el-breadcrumb:before{display:table;content:""}.el-breadcrumb:after{clear:both}.el-breadcrumb__separator{margin:0 8px;color:rgb(191, 203, 217)}.el-breadcrumb__item{float:left}.el-breadcrumb__item:last-child .el-breadcrumb__item__inner,.el-breadcrumb__item:last-child .el-breadcrumb__item__inner a,.el-breadcrumb__item:last-child .el-breadcrumb__item__inner a:hover,.el-breadcrumb__item:last-child .el-breadcrumb__item__inner:hover{color:rgb(151, 168, 190);cursor:text}.el-breadcrumb__item:last-child .el-breadcrumb__separator{display:none}.el-breadcrumb__item__inner,.el-breadcrumb__item__inner a{transition:color .15s linear;color:rgb(72, 87, 106)}.el-breadcrumb__item__inner a:hover,.el-breadcrumb__item__inner:hover{color:#1d8ce0;cursor:pointer} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/breadcrumb.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-breadcrumb{font-size:13px;line-height:1}.el-breadcrumb:after,.el-breadcrumb:before{display:table;content:""}.el-breadcrumb:after{clear:both}.el-breadcrumb__separator{margin:0 8px;color:rgb(191, 217, 214)}.el-breadcrumb__item{float:left}.el-breadcrumb__item:last-child .el-breadcrumb__item__inner,.el-breadcrumb__item:last-child .el-breadcrumb__item__inner a,.el-breadcrumb__item:last-child .el-breadcrumb__item__inner a:hover,.el-breadcrumb__item:last-child .el-breadcrumb__item__inner:hover{color:rgb(151, 190, 187);cursor:text}.el-breadcrumb__item:last-child .el-breadcrumb__separator{display:none}.el-breadcrumb__item__inner,.el-breadcrumb__item__inner a{transition:color .15s linear;color:rgb(72, 106, 103)}.el-breadcrumb__item__inner a:hover,.el-breadcrumb__item__inner:hover{color:#18c79c;cursor:pointer} -------------------------------------------------------------------------------- /src/modules/index/views/nav2/Page4.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/scrollbar.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-scrollbar{overflow:hidden;position:relative}.el-scrollbar:active .el-scrollbar__bar,.el-scrollbar:focus .el-scrollbar__bar,.el-scrollbar:hover .el-scrollbar__bar{opacity:1;transition:opacity 340ms ease-out}.el-scrollbar__wrap{overflow:scroll}.el-scrollbar__wrap--hidden-default::-webkit-scrollbar{width:0;height:0}.el-scrollbar__thumb{position:relative;display:block;width:0;height:0;cursor:pointer;border-radius:inherit;background-color:rgba(151,168,190,.3);transition:.3s background-color}.el-scrollbar__thumb:hover{background-color:rgba(151,168,190,.5)}.el-scrollbar__bar{position:absolute;right:2px;bottom:2px;z-index:1;border-radius:4px;opacity:0;transition:opacity 120ms ease-out}.el-scrollbar__bar.is-horizontal{height:6px;left:2px}.el-scrollbar__bar.is-horizontal>div{height:100%}.el-scrollbar__bar.is-vertical{width:6px;top:2px}.el-scrollbar__bar.is-vertical>div{width:100%} -------------------------------------------------------------------------------- /src/styles/widget/weui-footer/weui-footer.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-footer { 4 | color: @weuiTextColorGray; 5 | font-size: 14px; 6 | text-align: center; 7 | a{ 8 | color: @weuiLinkColorDefault; 9 | } 10 | } 11 | .weui-footer_fixed-bottom{ 12 | position: fixed; 13 | bottom: .52em; 14 | left: 0; 15 | right: 0; 16 | } 17 | .weui-footer__links{ 18 | font-size: 0; 19 | } 20 | .weui-footer__link{ 21 | display: inline-block; 22 | vertical-align: top; 23 | margin: 0 .62em; 24 | position: relative; 25 | font-size: 14px; 26 | &:before{ 27 | .setLeftLine(); 28 | left: -.65em; 29 | top: .36em; 30 | bottom: .36em; 31 | } 32 | &:first-child{ 33 | &:before{ 34 | display: none; 35 | } 36 | } 37 | } 38 | .weui-footer__text{ 39 | padding: 0 .34em; 40 | font-size: 12px; 41 | } -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/scrollbar.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-scrollbar{overflow:hidden;position:relative}.el-scrollbar:active .el-scrollbar__bar,.el-scrollbar:focus .el-scrollbar__bar,.el-scrollbar:hover .el-scrollbar__bar{opacity:1;transition:opacity 340ms ease-out}.el-scrollbar__wrap{overflow:scroll}.el-scrollbar__wrap--hidden-default::-webkit-scrollbar{width:0;height:0}.el-scrollbar__thumb{position:relative;display:block;width:0;height:0;cursor:pointer;border-radius:inherit;background-color:rgba(151,168,190,.3);transition:.3s background-color}.el-scrollbar__thumb:hover{background-color:rgba(151,168,190,.5)}.el-scrollbar__bar{position:absolute;right:2px;bottom:2px;z-index:1;border-radius:4px;opacity:0;transition:opacity 120ms ease-out}.el-scrollbar__bar.is-horizontal{height:6px;left:2px}.el-scrollbar__bar.is-horizontal>div{height:100%}.el-scrollbar__bar.is-vertical{width:6px;top:2px}.el-scrollbar__bar.is-vertical>div{width:100%} -------------------------------------------------------------------------------- /src/styles/widget/weui-button/weui-btn_plain.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-btn_plain-primary { 4 | color: @weuiBtnPlainPrimaryColor; 5 | border: 1px solid @weuiBtnPlainPrimaryBorderColor; 6 | &:not(.weui-btn_plain-disabled):active { 7 | color:@weuiBtnPlainPrimaryActiveColor; 8 | border-color: @weuiBtnPlainPrimaryActiveBorderColor; 9 | } 10 | &:after { 11 | border-width: 0; 12 | } 13 | } 14 | 15 | .weui-btn_plain-default { 16 | color: @weuiBtnPlainDefaultColor; 17 | border: 1px solid @weuiBtnPlainDefaultBorderColor; 18 | &:not(.weui-btn_plain-disabled):active { 19 | color:@weuiBtnPlainDefaultActiveColor; 20 | border-color: @weuiBtnPlainDefaultActiveBorderColor; 21 | } 22 | &:after { 23 | border-width: 0; 24 | } 25 | } 26 | .weui-btn_plain-disabled{ 27 | color:rgba(0,0,0,.2); 28 | border-color:rgba(0,0,0,.2); 29 | } -------------------------------------------------------------------------------- /src/styles/widget/weui-cell/weui-form/weui-vcode.less: -------------------------------------------------------------------------------- 1 | @import "../../../base/fn"; 2 | 3 | .weui-cell_vcode { 4 | padding-top: 0; 5 | padding-right: 0; 6 | padding-bottom: 0; 7 | } 8 | .weui-vcode-img{ 9 | margin-left: 5px; 10 | height: @weuiCellHeight; 11 | vertical-align: middle; 12 | } 13 | 14 | .weui-vcode-btn { 15 | display: inline-block; 16 | height: @weuiCellHeight; 17 | margin-left: 5px; 18 | padding: 0 0.6em 0 0.7em; 19 | border-left: 1px solid @weuiLineColorLight; 20 | line-height: @weuiCellHeight; 21 | vertical-align: middle; 22 | font-size: @weuiCellFontSize; 23 | color: @weuiDialogLinkColor; 24 | button&{ 25 | background-color: transparent; 26 | border-top: 0; 27 | border-right: 0; 28 | border-bottom: 0; 29 | outline: 0; 30 | } 31 | &:active { 32 | color: desaturate(@weuiDialogLinkColor, 30%); 33 | } 34 | } -------------------------------------------------------------------------------- /src/styles/widget/weui-tab/weui-navbar.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-navbar { 4 | display: flex; 5 | position: absolute; 6 | z-index: 500; 7 | top: 0; 8 | width: 100%; 9 | background-color: #FAFAFA; 10 | 11 | &:after { 12 | .setBottomLine(#CCCCCC); 13 | } 14 | 15 | & + .weui-tab__panel { 16 | padding-top: 50px; 17 | padding-bottom: 0; 18 | } 19 | } 20 | 21 | .weui-navbar__item { 22 | position: relative; 23 | display: block; 24 | flex: 1; 25 | padding: 13px 0; 26 | text-align: center; 27 | font-size: 15px; 28 | .setTapColor(); 29 | 30 | &:active { 31 | background-color: #EDEDED; 32 | } 33 | 34 | &.weui-bar__item_on { 35 | background-color: #EAEAEA; 36 | } 37 | 38 | &:after { 39 | .setRightLine(#CCCCCC); 40 | } 41 | 42 | &:last-child { 43 | &:after { 44 | display: none; 45 | } 46 | } 47 | } -------------------------------------------------------------------------------- /src/assets/theme/theme-green/alert.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-alert{width:100%;padding:8px 16px;margin:0;box-sizing:border-box;border-radius:4px;position:relative;background-color:#fff;overflow:hidden;color:#fff;opacity:1;display:table;transition:opacity .2s}.el-alert .el-alert__description{color:#fff;font-size:12px;margin:5px 0 0}.el-alert--success{background-color:#13ce66}.el-alert--info{background-color:#50bfff}.el-alert--warning{background-color:#f7ba2a}.el-alert--error{background-color:#ff4949}.el-alert__content{display:table-cell;padding:0 8px}.el-alert__icon{font-size:16px;width:16px;display:table-cell;color:#fff;vertical-align:middle}.el-alert__icon.is-big{font-size:28px;width:28px}.el-alert__title{font-size:13px;line-height:18px}.el-alert__title.is-bold{font-weight:700}.el-alert__closebtn{font-size:12px;color:#fff;opacity:1;top:12px;right:15px;position:absolute;cursor:pointer}.el-alert__closebtn.is-customed{font-style:normal;font-size:13px;top:9px}.el-alert-fade-enter,.el-alert-fade-leave-active{opacity:0} -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/alert.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-alert{width:100%;padding:8px 16px;margin:0;box-sizing:border-box;border-radius:4px;position:relative;background-color:#fff;overflow:hidden;color:#fff;opacity:1;display:table;transition:opacity .2s}.el-alert .el-alert__description{color:#fff;font-size:12px;margin:5px 0 0}.el-alert--success{background-color:#13ce66}.el-alert--info{background-color:#50bfff}.el-alert--warning{background-color:#f7ba2a}.el-alert--error{background-color:#ff4949}.el-alert__content{display:table-cell;padding:0 8px}.el-alert__icon{font-size:16px;width:16px;display:table-cell;color:#fff;vertical-align:middle}.el-alert__icon.is-big{font-size:28px;width:28px}.el-alert__title{font-size:13px;line-height:18px}.el-alert__title.is-bold{font-weight:700}.el-alert__closebtn{font-size:12px;color:#fff;opacity:1;top:12px;right:15px;position:absolute;cursor:pointer}.el-alert__closebtn.is-customed{font-style:normal;font-size:13px;top:9px}.el-alert-fade-enter,.el-alert-fade-leave-active{opacity:0} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/select-dropdown.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-select-dropdown{position:absolute;z-index:1001;border:1px solid rgb(209, 229, 227);border-radius:2px;background-color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.12),0 0 6px rgba(0,0,0,.04);box-sizing:border-box;margin:5px 0}.el-select-dropdown .el-scrollbar.is-empty .el-select-dropdown__list{padding:0}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected{color:#18c79c;background-color:#fff}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected.hover{background-color:rgb(228, 241, 241)}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected::after{position:absolute;right:10px;font-family:element-icons;content:"\E608";font-size:11px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.el-select-dropdown__empty{padding:10px 0;margin:0;text-align:center;color:#999;font-size:14px}.el-select-dropdown__wrap{max-height:274px}.el-select-dropdown__list{list-style:none;padding:6px 0;margin:0;box-sizing:border-box} -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/select-dropdown.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-select-dropdown{position:absolute;z-index:1001;border:1px solid rgb(209, 219, 229);border-radius:2px;background-color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.12),0 0 6px rgba(0,0,0,.04);box-sizing:border-box;margin:5px 0}.el-select-dropdown .el-scrollbar.is-empty .el-select-dropdown__list{padding:0}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected{color:#1d8ce0;background-color:#fff}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected.hover{background-color:rgb(228, 232, 241)}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected::after{position:absolute;right:10px;font-family:element-icons;content:"\E608";font-size:11px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.el-select-dropdown__empty{padding:10px 0;margin:0;text-align:center;color:#999;font-size:14px}.el-select-dropdown__wrap{max-height:274px}.el-select-dropdown__list{list-style:none;padding:6px 0;margin:0;box-sizing:border-box} -------------------------------------------------------------------------------- /src/modules/phone/phone/timeline.vue: -------------------------------------------------------------------------------- 1 | 19 | 20 | 37 | 38 | -------------------------------------------------------------------------------- /src/styles/widget/weui-button/weui-btn_global.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-btn { 4 | position: relative; 5 | display: block; 6 | margin-left: auto; 7 | margin-right: auto; 8 | padding-left: 14px; 9 | padding-right: 14px; 10 | box-sizing: border-box; 11 | font-size: @weuiBtnFontSize; 12 | text-align: center; 13 | text-decoration: none; 14 | color: @weuiBtnFontColor; 15 | line-height: unit(@weuiBtnHeight/@weuiBtnFontSize); 16 | border-radius: @weuiBtnBorderRadius; 17 | .setTapColor(); 18 | overflow: hidden; 19 | &:after { 20 | content: " "; 21 | width: 200%; 22 | height: 200%; 23 | position: absolute; 24 | top: 0; 25 | left: 0; 26 | border: 1px solid rgba(0, 0, 0, .2); 27 | transform: scale(.5); 28 | transform-origin: 0 0; 29 | box-sizing: border-box; 30 | border-radius: @weuiBtnBorderRadius*2; 31 | } 32 | } 33 | .weui-btn_inline { 34 | display: inline-block; 35 | } -------------------------------------------------------------------------------- /src/styles/widget/weui-slider/weui-slider.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-slider { 4 | padding: 15px 18px; 5 | user-select: none; 6 | } 7 | 8 | .weui-slider__inner { 9 | position: relative; 10 | height: 2px; 11 | background-color: #E9E9E9; 12 | } 13 | 14 | .weui-slider__track { 15 | height: 2px; 16 | background-color: @weuiColorPrimary; 17 | width: 0; 18 | } 19 | 20 | .weui-slider__handler { 21 | position: absolute; 22 | left: 0; 23 | top: 50%; 24 | width: 28px; 25 | height: 28px; 26 | margin-left: -14px; 27 | margin-top: -14px; 28 | border-radius: 50%; 29 | background-color: #FFFFFF; 30 | box-shadow: 0 0 4px rgba(0, 0, 0, .2); 31 | } 32 | 33 | 34 | .weui-slider-box{ 35 | display: flex; 36 | align-items: center; 37 | .weui-slider{ 38 | flex: 1; 39 | } 40 | } 41 | .weui-slider-box__value { 42 | margin-left: .5em; 43 | min-width: 24px; 44 | color: #888888; 45 | text-align: center; 46 | font-size: 14px; 47 | } -------------------------------------------------------------------------------- /src/styles/widget/weui-animate/weui-animate.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | @keyframes slideUp { 4 | from { 5 | transform: translate3d(0, 100%, 0); 6 | } 7 | 8 | to { 9 | transform: translate3d(0, 0, 0); 10 | } 11 | } 12 | 13 | .weui-animate-slide-up { 14 | animation: slideUp ease .3s forwards; 15 | } 16 | 17 | @keyframes slideDown { 18 | from { 19 | transform: translate3d(0, 0, 0); 20 | } 21 | 22 | to { 23 | transform: translate3d(0, 100%, 0); 24 | } 25 | } 26 | 27 | .weui-animate-slide-down { 28 | animation: slideDown ease .3s forwards; 29 | } 30 | 31 | @keyframes fadeIn { 32 | from { 33 | opacity: 0; 34 | } 35 | to { 36 | opacity: 1; 37 | } 38 | } 39 | 40 | .weui-animate-fade-in { 41 | animation: fadeIn ease .3s forwards; 42 | } 43 | 44 | @keyframes fadeOut { 45 | from { 46 | opacity: 1; 47 | } 48 | to { 49 | opacity: 0; 50 | } 51 | } 52 | 53 | .weui-animate-fade-out { 54 | animation: fadeOut ease .3s forwards; 55 | } -------------------------------------------------------------------------------- /src/modules/phone/phone.js: -------------------------------------------------------------------------------- 1 | // import babelpolyfill from 'babel-polyfill' 2 | import Vue from 'vue' 3 | import Grid from './phone/Grid.vue' 4 | import App from './Phone.vue' 5 | import ElementUI from 'element-ui' 6 | import 'element-ui/lib/theme-default/index.css' 7 | // import VueRouter from 'vue-router' 8 | import store from '../../vuex/store' 9 | import Vuex from 'vuex' 10 | //import NProgress from 'nprogress' 11 | //import 'nprogress/nprogress.css' 12 | import router from '../../route/routesPhone' 13 | import Mock from '../../mock' 14 | Mock.bootstrap(); 15 | import 'font-awesome/css/font-awesome.min.css' 16 | 17 | Vue.use(ElementUI) 18 | // Vue.use(VueRouter) 19 | Vue.use(Vuex) 20 | 21 | //NProgress.configure({ showSpinner: false }); 22 | 23 | /*const router = new VueRouter({ 24 | routesPhone 25 | })*/ 26 | 27 | //routerP.afterEach(transition => { 28 | //NProgress.done(); 29 | //}); 30 | 31 | const app1 = new Vue({ 32 | //el: '#app', 33 | //template: '', 34 | router, 35 | store, 36 | //components: { App } 37 | render: h => h(App) 38 | }).$mount('#phone') 39 | 40 | -------------------------------------------------------------------------------- /src/styles/widget/weui-tips/weui-loadmore.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-loadmore{ 4 | width: 65%; 5 | margin:1.5em auto; 6 | line-height: 1.6em; 7 | font-size:14px; 8 | text-align: center; 9 | } 10 | .weui-loadmore__tips{ 11 | display: inline-block; 12 | vertical-align: middle; 13 | } 14 | 15 | .weui-loadmore_line{ 16 | border-top:1px solid @weuiLineColorLight; 17 | margin-top:2.4em; 18 | .weui-loadmore__tips{ 19 | position: relative; 20 | top:-.9em; 21 | padding:0 .55em; 22 | background-color: #FFFFFF; 23 | color:@weuiTextColorGray; 24 | } 25 | } 26 | .weui-loadmore_dot{ 27 | .weui-loadmore__tips{ 28 | padding:0 .16em; 29 | &:before{ 30 | content: " "; 31 | width:4px; 32 | height:4px; 33 | border-radius:50%; 34 | background-color: @weuiLineColorLight; 35 | display: inline-block; 36 | position: relative; 37 | vertical-align: 0; 38 | top:-.16em; 39 | } 40 | } 41 | } -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/loading.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-loading-mask{position:absolute;z-index:10000;background-color:rgba(255,255,255,.9);margin:0;top:0;right:0;bottom:0;left:0;transition:opacity .3s}.el-loading-mask.is-fullscreen{position:fixed}.el-loading-mask.is-fullscreen .el-loading-spinner{margin-top:-25px}.el-loading-mask.is-fullscreen .el-loading-spinner .circular{width:50px;height:50px}.el-loading-spinner{top:50%;margin-top:-21px;width:100%;text-align:center;position:absolute}.el-loading-spinner .el-loading-text{color:#1d8ce0;margin:3px 0;font-size:14px}.el-loading-spinner .circular{width:42px;height:42px;animation:loading-rotate 2s linear infinite}.el-loading-spinner .path{animation:loading-dash 1.5s ease-in-out infinite;stroke-dasharray:90,150;stroke-dashoffset:0;stroke-width:2;stroke:#1d8ce0;stroke-linecap:round}.el-loading-fade-enter,.el-loading-fade-leave-active{opacity:0}@keyframes loading-rotate{100%{transform:rotate(360deg)}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40px}100%{stroke-dasharray:90,150;stroke-dashoffset:-120px}} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/loading.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-loading-mask{position:absolute;z-index:10000;background-color:rgba(255,255,255,.9);margin:0;top:0;right:0;bottom:0;left:0;transition:opacity .3s}.el-loading-mask.is-fullscreen{position:fixed}.el-loading-mask.is-fullscreen .el-loading-spinner{margin-top:-25px}.el-loading-mask.is-fullscreen .el-loading-spinner .circular{width:50px;height:50px}.el-loading-spinner{top:50%;margin-top:-21px;width:100%;text-align:center;position:absolute}.el-loading-spinner .el-loading-text{color:#18c79c;margin:3px 0;font-size:14px}.el-loading-spinner .circular{width:42px;height:42px;animation:loading-rotate 2s linear infinite}.el-loading-spinner .path{animation:loading-dash 1.5s ease-in-out infinite;stroke-dasharray:90,150;stroke-dashoffset:0;stroke-width:2;stroke:#18c79c;stroke-linecap:round}.el-loading-fade-enter,.el-loading-fade-leave-active{opacity:0}@keyframes loading-rotate{100%{transform:rotate(360deg)}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40px}100%{stroke-dasharray:90,150;stroke-dashoffset:-120px}} -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2016-present taylorchen709 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. -------------------------------------------------------------------------------- /src/styles/widget/weui-page/weui-msg.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | @import "../weui-button/weui-button"; 3 | 4 | .weui-msg { 5 | padding-top: @weuiMsgPaddingTop; 6 | text-align: center; 7 | } 8 | .weui-msg__icon-area { 9 | margin-bottom: @weuiMsgIconGap; 10 | } 11 | .weui-msg__text-area { 12 | margin-bottom: @weuiMsgTextGap; 13 | padding:0 20px; 14 | } 15 | .weui-msg__text-area a{ 16 | color:@weuiLinkColorDefault; 17 | } 18 | .weui-msg__title { 19 | margin-bottom: @weuiMsgTitleGap; 20 | font-weight: 400; 21 | font-size: 20px; 22 | } 23 | .weui-msg__desc { 24 | font-size: 14px; 25 | color: @weuiTextColorGray; 26 | } 27 | .weui-msg__opr-area { 28 | margin-bottom: @weuiMsgOprGap; 29 | } 30 | .weui-msg__extra-area { 31 | margin-bottom: @weuiMsgExtraAreaGap; 32 | font-size: 14px; 33 | color: @weuiTextColorGray; 34 | a{color: @weuiLinkColorDefault;} 35 | } 36 | 37 | @media screen and (min-height: @weuiMsgExtraAreaOfMinHeight) { 38 | .weui-msg__extra-area { 39 | position: fixed; 40 | left: 0; 41 | bottom: 0; 42 | width: 100%; 43 | text-align: center; 44 | } 45 | } -------------------------------------------------------------------------------- /src/styles/base/mixin/setOnepx.less: -------------------------------------------------------------------------------- 1 | .setTopLine(@c: #C7C7C7) { 2 | content: " "; 3 | position: absolute; 4 | left: 0; 5 | top: 0; 6 | right: 0; 7 | height: 1px; 8 | border-top: 1px solid @c; 9 | color: @c; 10 | transform-origin: 0 0; 11 | transform: scaleY(0.5); 12 | } 13 | 14 | .setBottomLine(@c: #C7C7C7) { 15 | content: " "; 16 | position: absolute; 17 | left: 0; 18 | bottom: 0; 19 | right: 0; 20 | height: 1px; 21 | border-bottom: 1px solid @c; 22 | color: @c; 23 | transform-origin: 0 100%; 24 | transform: scaleY(0.5); 25 | } 26 | 27 | .setLeftLine(@c: #C7C7C7) { 28 | content: " "; 29 | position: absolute; 30 | left: 0; 31 | top: 0; 32 | width: 1px; 33 | bottom: 0; 34 | border-left: 1px solid @c; 35 | color: @c; 36 | transform-origin: 0 0; 37 | transform: scaleX(0.5); 38 | } 39 | 40 | .setRightLine(@c: #C7C7C7) { 41 | content: " "; 42 | position: absolute; 43 | right: 0; 44 | top: 0; 45 | width: 1px; 46 | bottom: 0; 47 | border-right: 1px solid @c; 48 | color: @c; 49 | transform-origin: 100% 0; 50 | transform: scaleX(0.5); 51 | } -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/message.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-message{box-shadow:0 2px 4px rgba(0,0,0,.12),0 0 6px rgba(0,0,0,.04);min-width:300px;padding:10px 12px;box-sizing:border-box;border-radius:2px;position:fixed;left:50%;top:20px;-ms-transform:translateX(-50%);transform:translateX(-50%);background-color:#fff;transition:opacity .3s,transform .4s;overflow:hidden}.el-message .el-icon-circle-check{color:#13ce66}.el-message .el-icon-circle-cross{color:#ff4949}.el-message .el-icon-information{color:#50bfff}.el-message .el-icon-warning{color:#f7ba2a}.el-message__group{margin-left:38px;position:relative;height:20px;line-height:20px}.el-message__group p{font-size:14px;margin:0 34px 0 0;white-space:nowrap;color:rgb(131, 145, 165);text-align:justify}.el-message__group.is-with-icon{margin-left:0}.el-message__img{width:40px;height:40px;position:absolute;left:0;top:0}.el-message__icon{vertical-align:middle;margin-right:8px}.el-message__closeBtn{top:3px;right:0;position:absolute;cursor:pointer;color:rgb(191, 203, 217);font-size:14px}.el-message__closeBtn:hover{color:rgb(151, 168, 190)}.el-message-fade-enter,.el-message-fade-leave-active{opacity:0;-ms-transform:translate(-50%,-100%);transform:translate(-50%,-100%)} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/message.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-message{box-shadow:0 2px 4px rgba(0,0,0,.12),0 0 6px rgba(0,0,0,.04);min-width:300px;padding:10px 12px;box-sizing:border-box;border-radius:2px;position:fixed;left:50%;top:20px;-ms-transform:translateX(-50%);transform:translateX(-50%);background-color:#fff;transition:opacity .3s,transform .4s;overflow:hidden}.el-message .el-icon-circle-check{color:#13ce66}.el-message .el-icon-circle-cross{color:#ff4949}.el-message .el-icon-information{color:#50bfff}.el-message .el-icon-warning{color:#f7ba2a}.el-message__group{margin-left:38px;position:relative;height:20px;line-height:20px}.el-message__group p{font-size:14px;margin:0 34px 0 0;white-space:nowrap;color:rgb(131, 165, 162);text-align:justify}.el-message__group.is-with-icon{margin-left:0}.el-message__img{width:40px;height:40px;position:absolute;left:0;top:0}.el-message__icon{vertical-align:middle;margin-right:8px}.el-message__closeBtn{top:3px;right:0;position:absolute;cursor:pointer;color:rgb(191, 217, 214);font-size:14px}.el-message__closeBtn:hover{color:rgb(151, 190, 187)}.el-message-fade-enter,.el-message-fade-leave-active{opacity:0;-ms-transform:translate(-50%,-100%);transform:translate(-50%,-100%)} -------------------------------------------------------------------------------- /src/styles/widget/weui-tab/weui-tabbar.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-tabbar { 4 | display: flex; 5 | position: absolute; 6 | z-index: 500; 7 | bottom: 0; 8 | width: 100%; 9 | background-color: #F7F7FA; 10 | 11 | &:before { 12 | .setTopLine(#C0BFC4); 13 | } 14 | } 15 | 16 | .weui-tabbar__item { 17 | display: block; 18 | flex: 1; 19 | padding: 5px 0 0; 20 | font-size: 0; 21 | color: @weuiTextColorGray; 22 | text-align: center; 23 | .setTapColor(); 24 | 25 | &.weui-bar__item_on { 26 | .weui-tabbar__icon, 27 | .weui-tabbar__icon > i, 28 | .weui-tabbar__label { 29 | color: #09BB07; 30 | } 31 | } 32 | } 33 | 34 | .weui-tabbar__icon { 35 | display: inline-block; 36 | width: 27px; 37 | height: 27px; 38 | 39 | i&, 40 | > i { 41 | font-size: 24px; 42 | color: @weuiTextColorGray; 43 | } 44 | 45 | img { 46 | width: 100%; 47 | height: 100%; 48 | } 49 | } 50 | 51 | .weui-tabbar__label { 52 | text-align: center; 53 | color: @weuiTextColorGray; 54 | font-size: 10px; 55 | line-height: 1.8; 56 | } -------------------------------------------------------------------------------- /src/assets/theme/theme-green/notification.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-notification{width:330px;padding:20px;box-sizing:border-box;border-radius:2px;position:fixed;right:16px;background-color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.12),0 0 6px rgba(0,0,0,.04);transition:opacity .3s,transform .3s,right .3s,top .4s;overflow:hidden}.el-notification .el-icon-circle-check{color:#13ce66}.el-notification .el-icon-circle-cross{color:#ff4949}.el-notification .el-icon-information{color:#50bfff}.el-notification .el-icon-warning{color:#f7ba2a}.el-notification__group{margin-left:0}.el-notification__group.is-with-icon{margin-left:55px}.el-notification__title{font-weight:400;font-size:16px;color:rgb(31, 61, 57);margin:0}.el-notification__content{font-size:14px;line-height:21px;margin:10px 0 0;color:rgb(131, 165, 162);text-align:justify}.el-notification__icon{width:40px;height:40px;font-size:40px;float:left;position:relative;top:3px}.el-notification__closeBtn{top:20px;right:20px;position:absolute;cursor:pointer;color:rgb(191, 217, 214);font-size:14px}.el-notification__closeBtn:hover{color:rgb(151, 190, 187)}.el-notification-fade-enter{-ms-transform:translateX(100%);transform:translateX(100%);right:0}.el-notification-fade-leave-active{opacity:0} -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/notification.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-notification{width:330px;padding:20px;box-sizing:border-box;border-radius:2px;position:fixed;right:16px;background-color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.12),0 0 6px rgba(0,0,0,.04);transition:opacity .3s,transform .3s,right .3s,top .4s;overflow:hidden}.el-notification .el-icon-circle-check{color:#13ce66}.el-notification .el-icon-circle-cross{color:#ff4949}.el-notification .el-icon-information{color:#50bfff}.el-notification .el-icon-warning{color:#f7ba2a}.el-notification__group{margin-left:0}.el-notification__group.is-with-icon{margin-left:55px}.el-notification__title{font-weight:400;font-size:16px;color:rgb(31, 45, 61);margin:0}.el-notification__content{font-size:14px;line-height:21px;margin:10px 0 0;color:rgb(131, 145, 165);text-align:justify}.el-notification__icon{width:40px;height:40px;font-size:40px;float:left;position:relative;top:3px}.el-notification__closeBtn{top:20px;right:20px;position:absolute;cursor:pointer;color:rgb(191, 203, 217);font-size:14px}.el-notification__closeBtn:hover{color:rgb(151, 168, 190)}.el-notification-fade-enter{-ms-transform:translateX(100%);transform:translateX(100%);right:0}.el-notification-fade-leave-active{opacity:0} -------------------------------------------------------------------------------- /src/styles/main.scss: -------------------------------------------------------------------------------- 1 | .head{ 2 | width: 100%; 3 | height: 170px; 4 | margin: 0 auto; 5 | .head_2{ 6 | height: 170px; 7 | background: url(~assets/images/grid.jpg) no-repeat center center #197ec2; 8 | background-size: 100% 100%; 9 | } 10 | .head_list{ 11 | height: 170px; 12 | background: url(~assets/images/guide.png) no-repeat center center #197ec2; 13 | background-size: 100% 100%; 14 | } 15 | .head_contactUS { 16 | height: 170px; 17 | background-image: url(~assets/images/contact.jpg) ; 18 | background-size: 100% 100%; 19 | } 20 | } 21 | .icon_top{ 22 | margin-top:25px; 23 | } 24 | .iconMatr_top{ 25 | margin-top:15px; 26 | } 27 | .icon span{ 28 | color: #939393; 29 | line-height: 1.5; 30 | } 31 | .icon_blue{ 32 | color: #2297E4; 33 | } 34 | .icon_organ{ 35 | color: #F0AD4E; 36 | } 37 | .icon_green { 38 | color: #5CB85C; 39 | } 40 | .icon_yellow{ 41 | color: #ECDA14; 42 | } 43 | .icon_red{ 44 | color: #D9534F; 45 | } 46 | .icon_primary{ 47 | color: #337AB7; 48 | } 49 | .icon_purple{ 50 | color: #936DD1; 51 | } 52 | .icon { 53 | display: inline-block; 54 | height: 96px; 55 | width:33%; 56 | position: relative; 57 | text-align:center; 58 | vertical-align: middle; 59 | float:left; 60 | } 61 | -------------------------------------------------------------------------------- /src/styles/base/variable/weui-button.less: -------------------------------------------------------------------------------- 1 | @weuiBtnHeight:46px; 2 | @weuiBtnFontSize:18px; 3 | @weuiBtnFontColor:#FFFFFF; 4 | @weuiBtnActiveFontColor:rgba(255,255,255,.6); 5 | @weuiBtnDisabledFontColor:rgba(255,255,255,.6); 6 | @weuiBtnBorderRadius:5px; 7 | @weuiBtnDefaultGap:15px; 8 | 9 | @weuiBtnMiniFontSize:13px; 10 | @weuiBtnMiniHeight:2.3; 11 | 12 | @weuiBtnDefaultFontColor:#000000; 13 | @weuiBtnDefaultActiveFontColor:rgba(0,0,0,.6); 14 | @weuiBtnDefaultDisabledFontColor:rgba(0,0,0,.3); 15 | 16 | @weuiBtnDefaultBg:#F8F8F8; 17 | @weuiBtnDefaultActiveBg:#DEDEDE; 18 | @weuiBtnDefaultDisabledBg:#F7F7F7; 19 | 20 | @weuiBtnPrimaryBg:#1AAD19; 21 | @weuiBtnPrimaryActiveBg:#179B16; 22 | @weuiBtnPrimaryDisabledBg:#9ED99D; 23 | 24 | @weuiBtnWarnBg:#E64340; 25 | @weuiBtnWarnActiveBg:#CE3C39; 26 | @weuiBtnwarnDisabledBg:#EC8B89; 27 | 28 | 29 | @weuiBtnPlainPrimaryColor:rgba(26,173,25,1); 30 | @weuiBtnPlainPrimaryBorderColor:rgba(26,173,25,1); 31 | @weuiBtnPlainPrimaryActiveColor:rgba(26,173,25,.6); 32 | @weuiBtnPlainPrimaryActiveBorderColor:rgba(26,173,25,.6); 33 | 34 | @weuiBtnPlainDefaultColor:rgba(53,53,53,1); 35 | @weuiBtnPlainDefaultBorderColor:rgba(53,53,53,1); 36 | @weuiBtnPlainDefaultActiveColor:rgba(53,53,53,.6); 37 | @weuiBtnPlainDefaultActiveBorderColor:rgba(53,53,53,.6); 38 | -------------------------------------------------------------------------------- /src/styles/widget/weui-grid/weui-grid.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-grids { 4 | position: relative; 5 | overflow: hidden; 6 | 7 | &:before { 8 | .setTopLine(@weuiGridBorderColor); 9 | } 10 | &:after { 11 | .setLeftLine(@weuiGridBorderColor); 12 | } 13 | } 14 | 15 | .weui-grid { 16 | position: relative; 17 | float: left; 18 | padding: 20px 10px; 19 | width: 100% / @weuiGridColumnCount; 20 | box-sizing: border-box; 21 | 22 | &:before { 23 | .setRightLine(@weuiGridBorderColor); 24 | } 25 | &:after { 26 | .setBottomLine(@weuiGridBorderColor); 27 | } 28 | 29 | &:active { 30 | background-color: @weuiBgColorActive; 31 | } 32 | } 33 | 34 | .weui-grid__icon { 35 | width: @weuiGridIconSize; 36 | height: @weuiGridIconSize; 37 | margin: 0 auto; 38 | 39 | img { 40 | display: block; 41 | width: 100%; 42 | height: 100%; 43 | } 44 | 45 | & + .weui-grid__label{ 46 | margin-top: 5px; 47 | } 48 | } 49 | 50 | .weui-grid__label { 51 | display: block; 52 | text-align: center; 53 | color: @weuiTextColorTitle; 54 | font-size: @weuiGridFontSize; 55 | white-space: nowrap; 56 | text-overflow: ellipsis; 57 | overflow: hidden; 58 | } 59 | -------------------------------------------------------------------------------- /src/modules/index/index.js: -------------------------------------------------------------------------------- 1 | // import babelpolyfill from 'babel-polyfill' 2 | import Vue from 'vue' 3 | import App from './App' 4 | // import Table from './views/nav1/Table.vue' 5 | import ElementUI from 'element-ui' 6 | import 'element-ui/lib/theme-default/index.css' 7 | // import VueRouter from 'vue-router' 8 | import store from '../../vuex/store' 9 | import Vuex from 'vuex' 10 | //import NProgress from 'nprogress' 11 | //import 'nprogress/nprogress.css' 12 | import router from '../../route/routes' 13 | import Mock from '../../mock' 14 | Mock.bootstrap(); 15 | import 'font-awesome/css/font-awesome.min.css' 16 | 17 | Vue.use(ElementUI) 18 | // Vue.use(VueRouter) 19 | Vue.use(Vuex) 20 | 21 | //NProgress.configure({ showSpinner: false }); 22 | 23 | router.beforeEach((to, from, next) => { 24 | //NProgress.start(); 25 | if (to.path == '/login') { 26 | sessionStorage.removeItem('user'); 27 | } 28 | let user = JSON.parse(sessionStorage.getItem('user')); 29 | if (!user && to.path != '/login') { 30 | next({ path: '/login' }) 31 | } else { 32 | next() 33 | } 34 | }) 35 | 36 | //router.afterEach(transition => { 37 | //NProgress.done(); 38 | //}); 39 | 40 | const app2 = new Vue({ 41 | //el: '#app', 42 | //template: '', 43 | router, 44 | store, 45 | //components: { App } 46 | render: h => h(App) 47 | }).$mount('#app') 48 | 49 | -------------------------------------------------------------------------------- /src/api/api.js: -------------------------------------------------------------------------------- 1 | import axios from 'axios'; 2 | 3 | let base = ''; 4 | let host = 'http://localhost:8080/Urban/rest'; 5 | var rootIP = process.env.API_ROOT; 6 | 7 | export const requestLogin = params => { return axios.post(`${base}/login`, params).then(res => res.data); }; 8 | 9 | export const getUserList = params => { return axios.get(`${base}/user/list`, { params: params }); }; 10 | 11 | //真实环境时,禁掉mock,请求真实后台地址 12 | export const getUserList1 = params => { return axios.get(host+`/user/queryAllUser`); }; 13 | 14 | export const getUserList2 = params => { return axios.get(`/user/queryAllUser`); }; 15 | 16 | export const getUserListPage = params => { return axios.get(`${base}/user/listpage`, { params: params }); }; 17 | 18 | export const removeUser = params => { return axios.get(`${base}/user/remove`, { params: params }); }; 19 | 20 | export const batchRemoveUser = params => { return axios.get(`${base}/user/batchremove`, { params: params }); }; 21 | 22 | export const editUser = params => { return axios.get(`${base}/user/edit`, { params: params }); }; 23 | 24 | export const addUser = params => { return axios.get(`${base}/user/add`, { params: params }); }; 25 | 26 | export const getInfoList = params => { return axios.get(`${base}/info/list`, {params:params}); }; 27 | // 联系我们 28 | export const getTelephone = params=>{return axios.get(`${base}/telephone/list`, {params:params});}; -------------------------------------------------------------------------------- /src/styles/base/mixin/setArrow.less: -------------------------------------------------------------------------------- 1 | ._setArrow(@arrowsize, @borderColor, @borderWidth){ 2 | display: inline-block; 3 | height: @arrowsize; 4 | width: @arrowsize; 5 | border-width: @borderWidth @borderWidth 0 0; 6 | border-color: @borderColor; 7 | border-style: solid; 8 | } 9 | 10 | .setArrow(@direction, @arrowsize, @borderColor, @borderWidth) when (@direction = top) { 11 | ._setArrow(@arrowsize, @borderColor, @borderWidth); 12 | transform: matrix(0.71,-0.71,0.71,0.71,0,0); // rotate(-45deg) 13 | } 14 | 15 | .setArrow(@direction, @arrowsize, @borderColor,@borderWidth) when (@direction = right) { 16 | ._setArrow(@arrowsize, @borderColor, @borderWidth); 17 | transform: matrix(0.71,0.71,-0.71,0.71,0,0); // rotate(45deg); 18 | 19 | position: relative; 20 | top: -2px; 21 | } 22 | 23 | .setArrow(@direction, @arrowsize, @borderColor,@borderWidth) when (@direction = down) { 24 | ._setArrow(@arrowsize, @borderColor, @borderWidth); 25 | transform: matrix(-0.71,0.71,-0.71,-0.71,0,0); // rotate(135deg); 26 | 27 | position: relative; 28 | top: -3px; 29 | } 30 | 31 | .setArrow(@direction, @arrowsize, @borderColor,@borderWidth) when (@direction = left) { 32 | ._setArrow(@arrowsize, @borderColor, @borderWidth); 33 | transform: matrix(-0.71,-0.71,0.71,-0.71,0,0); // rotate(-135deg); 34 | 35 | position: relative; 36 | top: -2px; 37 | } -------------------------------------------------------------------------------- /src/assets/theme/theme-green/dialog.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.v-modal-enter{animation:v-modal-in .2s ease}.v-modal-leave{animation:v-modal-out .2s ease forwards}@keyframes v-modal-in{0%{opacity:0}}@keyframes v-modal-out{100%{opacity:0}}.v-modal{position:fixed;left:0;top:0;width:100%;height:100%;opacity:.5;background:#000}.el-dialog{position:absolute;left:50%;-ms-transform:translateX(-50%);transform:translateX(-50%);background:#fff;border-radius:2px;box-shadow:0 1px 3px rgba(0,0,0,.3);box-sizing:border-box}.el-dialog--tiny{width:30%}.el-dialog--small{width:50%}.el-dialog--large{width:90%}.el-dialog--full{width:100%;top:0;height:100%;overflow:auto}.el-dialog__wrapper{top:0;right:0;bottom:0;left:0;position:fixed;overflow:auto;margin:0}.el-dialog__header{padding:20px 20px 0}.el-dialog__close{cursor:pointer;color:rgb(191, 217, 214)}.el-dialog__close:hover{color:#18c79c}.el-dialog__title{line-height:1;font-size:16px;font-weight:700;color:rgb(31, 61, 57)}.el-dialog__body{padding:30px 20px;color:rgb(72, 106, 103);font-size:14px}.el-dialog__headerbtn{float:right}.el-dialog__footer{padding:10px 20px 15px;text-align:right;box-sizing:border-box}.dialog-fade-enter-active{animation:dialog-fade-in .3s}.dialog-fade-leave-active{animation:dialog-fade-out .3s}@keyframes dialog-fade-in{0%{transform:translate3d(0,-20px,0);opacity:0}100%{transform:translate3d(0,0,0);opacity:1}}@keyframes dialog-fade-out{0%{transform:translate3d(0,0,0);opacity:1}100%{transform:translate3d(0,-20px,0);opacity:0}} -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/dialog.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.v-modal-enter{animation:v-modal-in .2s ease}.v-modal-leave{animation:v-modal-out .2s ease forwards}@keyframes v-modal-in{0%{opacity:0}}@keyframes v-modal-out{100%{opacity:0}}.v-modal{position:fixed;left:0;top:0;width:100%;height:100%;opacity:.5;background:#000}.el-dialog{position:absolute;left:50%;-ms-transform:translateX(-50%);transform:translateX(-50%);background:#fff;border-radius:2px;box-shadow:0 1px 3px rgba(0,0,0,.3);box-sizing:border-box}.el-dialog--tiny{width:30%}.el-dialog--small{width:50%}.el-dialog--large{width:90%}.el-dialog--full{width:100%;top:0;height:100%;overflow:auto}.el-dialog__wrapper{top:0;right:0;bottom:0;left:0;position:fixed;overflow:auto;margin:0}.el-dialog__header{padding:20px 20px 0}.el-dialog__close{cursor:pointer;color:rgb(191, 203, 217)}.el-dialog__close:hover{color:#1d8ce0}.el-dialog__title{line-height:1;font-size:16px;font-weight:700;color:rgb(31, 45, 61)}.el-dialog__body{padding:30px 20px;color:rgb(72, 87, 106);font-size:14px}.el-dialog__headerbtn{float:right}.el-dialog__footer{padding:10px 20px 15px;text-align:right;box-sizing:border-box}.dialog-fade-enter-active{animation:dialog-fade-in .3s}.dialog-fade-leave-active{animation:dialog-fade-out .3s}@keyframes dialog-fade-in{0%{transform:translate3d(0,-20px,0);opacity:0}100%{transform:translate3d(0,0,0);opacity:1}}@keyframes dialog-fade-out{0%{transform:translate3d(0,0,0);opacity:1}100%{transform:translate3d(0,-20px,0);opacity:0}} -------------------------------------------------------------------------------- /src/styles/widget/weui-agree/weui-agree.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-agree{ 4 | display: block; 5 | padding: .5em 15px; 6 | font-size :13px; 7 | 8 | a{ 9 | color: @weuiLinkColorDefault; 10 | } 11 | } 12 | .weui-agree__text{ 13 | color: @weuiTextColorGray; 14 | } 15 | .weui-agree__checkbox{ 16 | appearance: none; 17 | outline: 0; 18 | font-size: 0; 19 | 20 | border: 1px solid #D1D1D1; 21 | background-color: #FFFFFF; 22 | border-radius: 3px; 23 | width: 13px; 24 | height: 13px; 25 | position: relative; 26 | 27 | vertical-align: 0; 28 | top: 2px; 29 | 30 | &:checked{ 31 | &:before{ 32 | font-family: "weui"; 33 | font-style: normal; 34 | font-weight: normal; 35 | font-variant: normal; 36 | text-transform: none; 37 | text-align: center; 38 | speak: none; 39 | display: inline-block; 40 | vertical-align: middle; 41 | text-decoration: inherit; 42 | content: "\EA08"; 43 | color: #09BB07; 44 | font-size: 13px; 45 | 46 | position: absolute; 47 | top: 50%; 48 | left: 50%; 49 | transform: translate(-50%,-48%) scale(.73); 50 | } 51 | } 52 | &:disabled{ 53 | background-color:#E1E1E1; 54 | &:before{ 55 | color:#ADADAD; 56 | } 57 | } 58 | } -------------------------------------------------------------------------------- /src/modules/index/App.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | 18 | 19 | -------------------------------------------------------------------------------- /src/styles/widget/weui-button/weui-button.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | @import "weui-btn_global"; 3 | @import "weui-btn_default"; 4 | @import "weui-btn_primary"; 5 | @import "weui-btn_warn"; 6 | @import "weui-btn_disabled"; 7 | @import "weui-btn_loading"; 8 | @import "weui-btn_plain"; 9 | 10 | button, input { 11 | &.weui-btn { 12 | width: 100%; 13 | border-width: 0; 14 | outline: 0; 15 | -webkit-appearance: none; 16 | &:focus { 17 | outline: 0; 18 | } 19 | } 20 | &.weui-btn_inline,&.weui-btn_mini { 21 | width: auto; 22 | } 23 | &.weui-btn_plain-primary,&.weui-btn_plain-default{ 24 | border-width: 1px; 25 | background-color: transparent; 26 | } 27 | } 28 | 29 | .weui-btn_mini { 30 | display: inline-block; 31 | padding: 0 1.32em; 32 | line-height: @weuiBtnMiniHeight; 33 | font-size: @weuiBtnMiniFontSize; 34 | } 35 | 36 | 37 | /*gap between btn*/ 38 | .weui-btn + .weui-btn { 39 | margin-top: @weuiBtnDefaultGap; 40 | } 41 | 42 | .weui-btn.weui-btn_inline + .weui-btn.weui-btn_inline { 43 | margin-top: auto; 44 | margin-left: @weuiBtnDefaultGap; 45 | } 46 | 47 | .weui-btn-area { 48 | margin: @weuiCellsMarginTop @weuiBtnDefaultGap .3em; 49 | } 50 | .weui-btn-area_inline { 51 | display: flex; 52 | .weui-btn { 53 | margin-top: auto; 54 | margin-right: @weuiBtnDefaultGap; 55 | width: 100%; 56 | flex: 1; 57 | &:last-child { 58 | margin-right: 0; 59 | } 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/form.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-form--inline .el-form-item,.el-form--inline .el-form-item__content{display:inline-block;vertical-align:top}.el-form-item:after,.el-form-item__content:after{clear:both}.el-form--label-left .el-form-item__label{text-align:left}.el-form--label-top .el-form-item__label{float:none;display:inline-block;padding:0 0 10px}.el-form--inline .el-form-item{margin-right:10px}.el-form--inline .el-form-item__label{float:none;display:inline-block}.el-form--inline.el-form--label-top .el-form-item__content{display:block}.el-form-item{margin-bottom:22px}.el-form-item:after,.el-form-item:before{display:table;content:""}.el-form-item .el-form-item{margin-bottom:0}.el-form-item .el-form-item .el-form-item__content{margin-left:0!important}.el-form-item.is-error .el-input-group__append .el-input__inner,.el-form-item.is-error .el-input-group__prepend .el-input__inner,.el-form-item.is-error .el-input__inner{border-color:transparent}.el-form-item.is-error .el-input__inner,.el-form-item.is-error .el-textarea__inner{border-color:#ff4949}.el-form-item.is-required .el-form-item__label:before{content:'*';color:#ff4949;margin-right:4px}.el-form-item__label{text-align:right;vertical-align:middle;float:left;font-size:14px;color:rgb(72, 87, 106);line-height:1;padding:11px 12px 11px 0;box-sizing:border-box}.el-form-item__content{line-height:36px;position:relative;font-size:14px}.el-form-item__content:after,.el-form-item__content:before{display:table;content:""}.el-form-item__error{color:#ff4949;font-size:12px;line-height:1;padding-top:4px;position:absolute;top:100%;left:0} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/form.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-form--inline .el-form-item,.el-form--inline .el-form-item__content{display:inline-block;vertical-align:top}.el-form-item:after,.el-form-item__content:after{clear:both}.el-form--label-left .el-form-item__label{text-align:left}.el-form--label-top .el-form-item__label{float:none;display:inline-block;padding:0 0 10px}.el-form--inline .el-form-item{margin-right:10px}.el-form--inline .el-form-item__label{float:none;display:inline-block}.el-form--inline.el-form--label-top .el-form-item__content{display:block}.el-form-item{margin-bottom:22px}.el-form-item:after,.el-form-item:before{display:table;content:""}.el-form-item .el-form-item{margin-bottom:0}.el-form-item .el-form-item .el-form-item__content{margin-left:0!important}.el-form-item.is-error .el-input-group__append .el-input__inner,.el-form-item.is-error .el-input-group__prepend .el-input__inner,.el-form-item.is-error .el-input__inner{border-color:transparent}.el-form-item.is-error .el-input__inner,.el-form-item.is-error .el-textarea__inner{border-color:#ff4949}.el-form-item.is-required .el-form-item__label:before{content:'*';color:#ff4949;margin-right:4px}.el-form-item__label{text-align:right;vertical-align:middle;float:left;font-size:14px;color:rgb(72, 106, 103);line-height:1;padding:11px 12px 11px 0;box-sizing:border-box}.el-form-item__content{line-height:36px;position:relative;font-size:14px}.el-form-item__content:after,.el-form-item__content:before{display:table;content:""}.el-form-item__error{color:#ff4949;font-size:12px;line-height:1;padding-top:4px;position:absolute;top:100%;left:0} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/tree.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-tree{cursor:default;background:#fff;border:1px solid rgb(209, 229, 227)}.el-tree__empty-block{position:relative;min-height:60px;text-align:center;width:100%;height:100%}.el-tree__empty-text{position:absolute;left:50%;top:50%;-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:#5e7382}.el-tree-node{white-space:nowrap}.el-tree-node>.el-tree-node__children{overflow:hidden;background-color:transparent}.el-tree-node.is-expanded>.el-tree-node__children{display:block}.el-tree-node__expand-icon,.el-tree-node__label,.el-tree-node__loading-icon{display:inline-block;vertical-align:middle}.el-tree-node__content{line-height:36px;height:36px;cursor:pointer}.el-tree-node__content>.el-checkbox,.el-tree-node__content>.el-tree-node__expand-icon{margin-right:8px}.el-tree-node__content>.el-checkbox{vertical-align:middle}.el-tree-node__content:hover{background:rgb(228, 241, 241)}.el-tree-node__expand-icon{cursor:pointer;width:0;height:0;margin-left:10px;border:6px solid transparent;border-right-width:0;border-left-color:rgb(151, 190, 187);border-left-width:7px;-ms-transform:rotate(0);transform:rotate(0);transition:transform .3s ease-in-out}.el-tree-node__expand-icon:hover{border-left-color:#999}.el-tree-node__expand-icon.expanded{-ms-transform:rotate(90deg);transform:rotate(90deg)}.el-tree-node__expand-icon.is-leaf{border-color:transparent;cursor:default}.el-tree-node__label{font-size:14px}.el-tree-node__loading-icon{margin-right:4px;font-size:14px;color:rgb(151, 190, 187)}.el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content{background-color:rgb(237, 251, 247)} -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/tree.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-tree{cursor:default;background:#fff;border:1px solid rgb(209, 219, 229)}.el-tree__empty-block{position:relative;min-height:60px;text-align:center;width:100%;height:100%}.el-tree__empty-text{position:absolute;left:50%;top:50%;-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:#5e7382}.el-tree-node{white-space:nowrap}.el-tree-node>.el-tree-node__children{overflow:hidden;background-color:transparent}.el-tree-node.is-expanded>.el-tree-node__children{display:block}.el-tree-node__expand-icon,.el-tree-node__label,.el-tree-node__loading-icon{display:inline-block;vertical-align:middle}.el-tree-node__content{line-height:36px;height:36px;cursor:pointer}.el-tree-node__content>.el-checkbox,.el-tree-node__content>.el-tree-node__expand-icon{margin-right:8px}.el-tree-node__content>.el-checkbox{vertical-align:middle}.el-tree-node__content:hover{background:rgb(228, 232, 241)}.el-tree-node__expand-icon{cursor:pointer;width:0;height:0;margin-left:10px;border:6px solid transparent;border-right-width:0;border-left-color:rgb(151, 168, 190);border-left-width:7px;-ms-transform:rotate(0);transform:rotate(0);transition:transform .3s ease-in-out}.el-tree-node__expand-icon:hover{border-left-color:#999}.el-tree-node__expand-icon.expanded{-ms-transform:rotate(90deg);transform:rotate(90deg)}.el-tree-node__expand-icon.is-leaf{border-color:transparent;cursor:default}.el-tree-node__label{font-size:14px}.el-tree-node__loading-icon{margin-right:4px;font-size:14px;color:rgb(151, 168, 190)}.el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content{background-color:rgb(237, 246, 253)} -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/tag.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-tag{background-color:rgb(131, 145, 165);display:inline-block;padding:0 5px;height:24px;line-height:22px;font-size:12px;color:#fff;border-radius:4px;box-sizing:border-box;border:1px solid transparent;white-space:nowrap}.el-tag .el-icon-close{border-radius:50%;text-align:center;position:relative;cursor:pointer;font-size:12px;-ms-transform:scale(.75,.75);transform:scale(.75,.75);height:18px;width:18px;line-height:18px;vertical-align:middle;top:-1px;right:-2px}.el-tag .el-icon-close:hover{background-color:#fff;color:rgb(131, 145, 165)}.el-tag--gray{background-color:rgb(228, 232, 241);border-color:rgb(228, 232, 241);color:rgb(72, 87, 106)}.el-tag--gray .el-tag__close:hover{background-color:rgb(72, 87, 106);color:#fff}.el-tag--gray.is-hit{border-color:rgb(72, 87, 106)}.el-tag--primary{background-color:rgba(32,160,255,.1);border-color:rgba(32,160,255,.2);color:#1d8ce0}.el-tag--primary .el-tag__close:hover{background-color:#1d8ce0;color:#fff}.el-tag--primary.is-hit{border-color:#1d8ce0}.el-tag--success{background-color:rgba(18,206,102,.1);border-color:rgba(18,206,102,.2);color:#13ce66}.el-tag--success .el-tag__close:hover{background-color:#13ce66;color:#fff}.el-tag--success.is-hit{border-color:#13ce66}.el-tag--warning{background-color:rgba(247,186,41,.1);border-color:rgba(247,186,41,.2);color:#f7ba2a}.el-tag--warning .el-tag__close:hover{background-color:#f7ba2a;color:#fff}.el-tag--warning.is-hit{border-color:#f7ba2a}.el-tag--danger{background-color:rgba(255,73,73,.1);border-color:rgba(255,73,73,.2);color:#ff4949}.el-tag--danger .el-tag__close:hover{background-color:#ff4949;color:#fff}.el-tag--danger.is-hit{border-color:#ff4949} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/tag.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-tag{background-color:rgb(131, 165, 162);display:inline-block;padding:0 5px;height:24px;line-height:22px;font-size:12px;color:#fff;border-radius:4px;box-sizing:border-box;border:1px solid transparent;white-space:nowrap}.el-tag .el-icon-close{border-radius:50%;text-align:center;position:relative;cursor:pointer;font-size:12px;-ms-transform:scale(.75,.75);transform:scale(.75,.75);height:18px;width:18px;line-height:18px;vertical-align:middle;top:-1px;right:-2px}.el-tag .el-icon-close:hover{background-color:#fff;color:rgb(131, 165, 162)}.el-tag--gray{background-color:rgb(228, 241, 241);border-color:rgb(228, 241, 241);color:rgb(72, 106, 103)}.el-tag--gray .el-tag__close:hover{background-color:rgb(72, 106, 103);color:#fff}.el-tag--gray.is-hit{border-color:rgb(72, 106, 103)}.el-tag--primary{background-color:rgba(32,160,255,.1);border-color:rgba(32,160,255,.2);color:#18c79c}.el-tag--primary .el-tag__close:hover{background-color:#18c79c;color:#fff}.el-tag--primary.is-hit{border-color:#18c79c}.el-tag--success{background-color:rgba(18,206,102,.1);border-color:rgba(18,206,102,.2);color:#13ce66}.el-tag--success .el-tag__close:hover{background-color:#13ce66;color:#fff}.el-tag--success.is-hit{border-color:#13ce66}.el-tag--warning{background-color:rgba(247,186,41,.1);border-color:rgba(247,186,41,.2);color:#f7ba2a}.el-tag--warning .el-tag__close:hover{background-color:#f7ba2a;color:#fff}.el-tag--warning.is-hit{border-color:#f7ba2a}.el-tag--danger{background-color:rgba(255,73,73,.1);border-color:rgba(255,73,73,.2);color:#ff4949}.el-tag--danger .el-tag__close:hover{background-color:#ff4949;color:#fff}.el-tag--danger.is-hit{border-color:#ff4949} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/carousel.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-carousel__arrow,.el-carousel__button{outline:0;margin:0;cursor:pointer;transition:.3s}.el-carousel{overflow-x:hidden;position:relative}.el-carousel__container{position:relative;height:300px}.el-carousel__arrow{border:none;padding:0;width:36px;height:36px;border-radius:50%;background-color:rgba(31,45,61,.11);color:#fff;position:absolute;top:50%;z-index:10;-ms-transform:translateY(-50%);transform:translateY(-50%);text-align:center;font-size:12px}.el-carousel__arrow:hover{background-color:rgba(31,45,61,.23)}.el-carousel__arrow i{cursor:pointer}.el-carousel__arrow--left{left:16px}.el-carousel__arrow--right{right:16px}.el-carousel__indicators{position:absolute;list-style:none;bottom:0;left:50%;-ms-transform:translateX(-50%);transform:translateX(-50%);margin:0;padding:0;z-index:2}.el-carousel__indicators--outside{bottom:26px;text-align:center;position:static;-ms-transform:none;transform:none}.el-carousel__indicators--outside .el-carousel__indicator:hover button{opacity:.64}.el-carousel__indicators--outside button{background-color:rgb(131, 165, 162);opacity:.24}.el-carousel__indicator{display:inline-block;background-color:transparent;padding:12px 4px;cursor:pointer}.el-carousel__indicator:hover button{opacity:.72}.el-carousel__indicator.is-active button{opacity:1}.el-carousel__button{display:block;opacity:.48;width:30px;height:2px;background-color:#fff;border:none;padding:0}.carousel-arrow-left-enter,.carousel-arrow-left-leave-active{-ms-transform:translateY(-50%) translateX(-10px);transform:translateY(-50%) translateX(-10px);opacity:0}.carousel-arrow-right-enter,.carousel-arrow-right-leave-active{-ms-transform:translateY(-50%) translateX(10px);transform:translateY(-50%) translateX(10px);opacity:0} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/progress.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-progress-bar__inner:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-progress{position:relative;line-height:1}.el-progress.is-exception .el-progress-bar__inner{background-color:#ff4949}.el-progress.is-exception .el-progress__text{color:#ff4949}.el-progress.is-success .el-progress-bar__inner{background-color:#13ce66}.el-progress.is-success .el-progress__text{color:#13ce66}.el-progress__text{font-size:14px;color:rgb(72, 106, 103);display:inline-block;vertical-align:middle;margin-left:10px;line-height:1}.el-progress__text i{vertical-align:middle;display:block}.el-progress--circle{display:inline-block}.el-progress--circle .el-progress__text{position:absolute;top:50%;left:0;width:100%;text-align:center;margin:0;-ms-transform:translate(0,-50%);transform:translate(0,-50%)}.el-progress--circle .el-progress__text i{vertical-align:middle;display:inline-block}.el-progress--without-text .el-progress__text{display:none}.el-progress--without-text .el-progress-bar{padding-right:0;margin-right:0;display:block}.el-progress--text-inside .el-progress-bar{padding-right:0;margin-right:0}.el-progress-bar{padding-right:50px;display:inline-block;vertical-align:middle;width:100%;margin-right:-55px;box-sizing:border-box}.el-progress-bar__outer{height:6px;border-radius:100px;background-color:rgb(228, 241, 241);overflow:hidden;position:relative;vertical-align:middle}.el-progress-bar__inner{position:absolute;left:0;top:0;height:100%;background-color:#18c79c;text-align:right;border-radius:100px;line-height:1}.el-progress-bar__innerText{display:inline-block;vertical-align:middle;color:#fff;font-size:12px;margin:0 5px}@keyframes progress{0%{background-position:0 0}100%{background-position:32px 0}} -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/carousel.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-carousel__arrow,.el-carousel__button{outline:0;margin:0;cursor:pointer;transition:.3s}.el-carousel{overflow-x:hidden;position:relative}.el-carousel__container{position:relative;height:300px}.el-carousel__arrow{border:none;padding:0;width:36px;height:36px;border-radius:50%;background-color:rgba(31,45,61,.11);color:#fff;position:absolute;top:50%;z-index:10;-ms-transform:translateY(-50%);transform:translateY(-50%);text-align:center;font-size:12px}.el-carousel__arrow:hover{background-color:rgba(31,45,61,.23)}.el-carousel__arrow i{cursor:pointer}.el-carousel__arrow--left{left:16px}.el-carousel__arrow--right{right:16px}.el-carousel__indicators{position:absolute;list-style:none;bottom:0;left:50%;-ms-transform:translateX(-50%);transform:translateX(-50%);margin:0;padding:0;z-index:2}.el-carousel__indicators--outside{bottom:26px;text-align:center;position:static;-ms-transform:none;transform:none}.el-carousel__indicators--outside .el-carousel__indicator:hover button{opacity:.64}.el-carousel__indicators--outside button{background-color:rgb(131, 145, 165);opacity:.24}.el-carousel__indicator{display:inline-block;background-color:transparent;padding:12px 4px;cursor:pointer}.el-carousel__indicator:hover button{opacity:.72}.el-carousel__indicator.is-active button{opacity:1}.el-carousel__button{display:block;opacity:.48;width:30px;height:2px;background-color:#fff;border:none;padding:0}.carousel-arrow-left-enter,.carousel-arrow-left-leave-active{-ms-transform:translateY(-50%) translateX(-10px);transform:translateY(-50%) translateX(-10px);opacity:0}.carousel-arrow-right-enter,.carousel-arrow-right-leave-active{-ms-transform:translateY(-50%) translateX(10px);transform:translateY(-50%) translateX(10px);opacity:0} -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/progress.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-progress-bar__inner:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-progress{position:relative;line-height:1}.el-progress.is-exception .el-progress-bar__inner{background-color:#ff4949}.el-progress.is-exception .el-progress__text{color:#ff4949}.el-progress.is-success .el-progress-bar__inner{background-color:#13ce66}.el-progress.is-success .el-progress__text{color:#13ce66}.el-progress__text{font-size:14px;color:rgb(72, 87, 106);display:inline-block;vertical-align:middle;margin-left:10px;line-height:1}.el-progress__text i{vertical-align:middle;display:block}.el-progress--circle{display:inline-block}.el-progress--circle .el-progress__text{position:absolute;top:50%;left:0;width:100%;text-align:center;margin:0;-ms-transform:translate(0,-50%);transform:translate(0,-50%)}.el-progress--circle .el-progress__text i{vertical-align:middle;display:inline-block}.el-progress--without-text .el-progress__text{display:none}.el-progress--without-text .el-progress-bar{padding-right:0;margin-right:0;display:block}.el-progress--text-inside .el-progress-bar{padding-right:0;margin-right:0}.el-progress-bar{padding-right:50px;display:inline-block;vertical-align:middle;width:100%;margin-right:-55px;box-sizing:border-box}.el-progress-bar__outer{height:6px;border-radius:100px;background-color:rgb(228, 232, 241);overflow:hidden;position:relative;vertical-align:middle}.el-progress-bar__inner{position:absolute;left:0;top:0;height:100%;background-color:#1d8ce0;text-align:right;border-radius:100px;line-height:1}.el-progress-bar__innerText{display:inline-block;vertical-align:middle;color:#fff;font-size:12px;margin:0 5px}@keyframes progress{0%{background-position:0 0}100%{background-position:32px 0}} -------------------------------------------------------------------------------- /src/styles/widget/weui-cell/weui-form/weui-select.less: -------------------------------------------------------------------------------- 1 | @import "../../../base/fn"; 2 | 3 | .weui-cell_select { 4 | padding: 0; 5 | .weui-select { 6 | padding-right: 30px; 7 | } 8 | .weui-cell__bd{ 9 | &:after{ 10 | content: " "; 11 | .setArrow(right, 6px, #C8C8CD, 2px); 12 | 13 | position: absolute; 14 | top: 50%; 15 | right: @weuiCellGapH; 16 | margin-top: -4px; 17 | } 18 | } 19 | } 20 | 21 | .weui-select { 22 | -webkit-appearance: none; 23 | border: 0; 24 | outline: 0; 25 | background-color: transparent; 26 | width: 100%; 27 | font-size: inherit; 28 | height: @weuiCellHeight; 29 | line-height: @weuiCellHeight; 30 | position: relative; 31 | z-index: 1; 32 | padding-left: @weuiCellGapH; 33 | } 34 | 35 | .weui-cell_select-before { 36 | padding-right:@weuiCellGapH; 37 | .weui-select{ 38 | width:@weuiCellLabelWidth; 39 | box-sizing: border-box; 40 | } 41 | .weui-cell__hd { 42 | position:relative; 43 | &:after { 44 | .setRightLine(@weuiCellBorderColor); 45 | } 46 | &:before{ 47 | content: " "; 48 | .setArrow(right, 6px, #C8C8CD, 2px); 49 | 50 | position: absolute; 51 | top: 50%; 52 | right: @weuiCellGapH; 53 | margin-top: -4px; 54 | } 55 | } 56 | .weui-cell__bd { 57 | padding-left:@weuiCellGapH; 58 | &:after{ 59 | display:none; 60 | } 61 | } 62 | } 63 | 64 | .weui-cell_select-after { 65 | padding-left:@weuiCellGapH; 66 | .weui-select { 67 | padding-left:0; 68 | } 69 | } -------------------------------------------------------------------------------- /config/index.js: -------------------------------------------------------------------------------- 1 | // see http://vuejs-templates.github.io/webpack for documentation. 2 | var path = require('path'); 3 | 4 | module.exports = { 5 | moduleName:'modules', 6 | 7 | build: { 8 | env: require('./prod.env'), 9 | index: path.resolve(__dirname, '../dist/modules/index/index.html'), 10 | phone: path.resolve(__dirname, '../dist/modules/phone/phone.html'), 11 | assetsRoot: path.resolve(__dirname, '../dist'), 12 | assetsSubDirectory: 'static', 13 | assetsPublicPath: '/', 14 | productionSourceMap: true, 15 | // Gzip off by default as many popular static hosts such as 16 | // Surge or Netlify already gzip all static assets for you. 17 | // Before setting to `true`, make sure to: 18 | // npm install --save-dev compression-webpack-plugin 19 | productionGzip: false, 20 | productionGzipExtensions: ['js', 'css'], 21 | bundleAnalyzerReport: process.env.npm_config_report 22 | }, 23 | dev: { 24 | env: require('./dev.env'), 25 | port: 8088, 26 | assetsSubDirectory: 'static', 27 | assetsPublicPath: '/', 28 | proxyTable: { 29 | '/api/*': { 30 | target:'http://127.0.0.1:8080/Urban/rest', 31 | // target: 'http://'+rootIP, 32 | changeOrigin: true, 33 | pathRewrite: { 34 | '^/api': '', 35 | } 36 | } 37 | }, 38 | // CSS Sourcemaps off by default because relative paths are "buggy" 39 | // with this option, according to the CSS-Loader README 40 | // (https://github.com/webpack/css-loader#sourcemaps) 41 | // In our experience, they generally work as expected, 42 | // just be aware of this issue when enabling this option. 43 | cssSourceMap: false 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /src/styles/icon/weui-icon_font.less: -------------------------------------------------------------------------------- 1 | @import "weui-font"; 2 | 3 | [class^="weui-icon_"]:before, [class*=" weui-icon_"]:before { 4 | margin: 0; 5 | } 6 | .weui-icon-success { 7 | font-size: 23px; 8 | color: #09BB07; 9 | } 10 | .weui-icon-waiting { 11 | font-size: 23px; 12 | color: #10AEFF; 13 | } 14 | .weui-icon-warn { 15 | font-size: 23px; 16 | color: #F43530; 17 | } 18 | .weui-icon-info { 19 | font-size: 23px; 20 | color: #10AEFF; 21 | } 22 | 23 | .weui-icon-success-circle { 24 | font-size: 23px; 25 | color: #09BB07; 26 | } 27 | .weui-icon-success-no-circle { 28 | font-size: 23px; 29 | color: #09BB07; 30 | } 31 | .weui-icon-waiting-circle { 32 | font-size: 23px; 33 | color: #10AEFF; 34 | } 35 | .weui-icon-circle { 36 | font-size: 23px; 37 | color: #C9C9C9; 38 | } 39 | .weui-icon-download { 40 | font-size: 23px; 41 | color: #09BB07; 42 | } 43 | 44 | .weui-icon-info-circle { 45 | font-size: 23px; 46 | color: #09BB07; 47 | } 48 | 49 | .weui-icon-safe-success { 50 | color: #09BB07; 51 | } 52 | .weui-icon-safe-warn { 53 | color: #FFBE00; 54 | } 55 | 56 | .weui-icon-cancel { 57 | color: #F43530; 58 | font-size: 22px; 59 | } 60 | 61 | .weui-icon-search { 62 | color: #B2B2B2; 63 | font-size: 14px; 64 | } 65 | 66 | .weui-icon-clear { 67 | color: #B2B2B2; 68 | font-size: 14px; 69 | } 70 | 71 | .weui-icon-delete { 72 | &.weui-icon_gallery-delete{ 73 | color:#FFFFFF; 74 | font-size:22px; 75 | } 76 | } 77 | 78 | .weui-icon_msg { 79 | font-size: 93px; 80 | &.weui-icon-warn { 81 | color: #F76260; 82 | } 83 | } 84 | .weui-icon_msg-primary { 85 | font-size: 93px; 86 | &.weui-icon-warn { 87 | color: #FFBE00; 88 | } 89 | } 90 | -------------------------------------------------------------------------------- /src/styles/widget/weui-cell/weui-form/weui-form_common.less: -------------------------------------------------------------------------------- 1 | @import "../../../base/fn"; 2 | 3 | .weui-label{ 4 | display:block; 5 | width:@weuiCellLabelWidth; 6 | .text_wrap(); 7 | } 8 | .weui-input { 9 | width: 100%; 10 | border: 0; 11 | outline: 0; 12 | -webkit-appearance: none; 13 | background-color: transparent; 14 | font-size: inherit; 15 | color: inherit; 16 | height: unit(@weuiCellLineHeight, em); 17 | line-height: @weuiCellLineHeight; 18 | 19 | // hides the spin-button 20 | &::-webkit-outer-spin-button, &::-webkit-inner-spin-button{ 21 | -webkit-appearance: none; 22 | margin: 0; 23 | } 24 | } 25 | .weui-textarea { 26 | display: block; 27 | border: 0; 28 | resize: none; 29 | width: 100%; 30 | color: inherit; 31 | font-size: 1em; 32 | line-height: inherit; 33 | outline: 0; 34 | } 35 | 36 | .weui-textarea-counter{ 37 | color: @weuiTextColorTips; 38 | text-align: right; 39 | .weui-cell_warn &{ 40 | color: @weuiTextColorWarn; 41 | } 42 | } 43 | 44 | .weui-toptips { 45 | display:none; 46 | position: fixed; 47 | transform: translateZ(0); 48 | top: 0; 49 | left: 0; 50 | right: 0; 51 | padding:5px; 52 | font-size:14px; 53 | text-align: center; 54 | color: #FFF; 55 | z-index: 5000; 56 | .text_wrap(); 57 | } 58 | .weui-toptips_warn { 59 | background-color: @weuiColorWarn; 60 | } 61 | .weui-cells_form { 62 | .weui-cell__ft{ 63 | font-size:0; 64 | } 65 | .weui-icon-warn{ 66 | display:none; 67 | } 68 | input, textarea, label[for]{ 69 | .setTapColor(); 70 | } 71 | } 72 | .weui-cell_warn{ 73 | color:@weuiTextColorWarn; 74 | .weui-icon-warn{display:inline-block;} 75 | } 76 | -------------------------------------------------------------------------------- /src/styles/weui.less: -------------------------------------------------------------------------------- 1 | @import "./base/reset"; 2 | 3 | // icon font 4 | @import "./icon/weui-icon_font"; 5 | 6 | 7 | // button 8 | @import "./widget/weui-button/weui-button"; 9 | 10 | // cell 11 | @import "./widget/weui-cell/weui-cell_global"; 12 | 13 | @import "./widget/weui-cell/weui-access"; 14 | @import "./widget/weui-cell/weui-check"; 15 | @import "./widget/weui-cell/weui-form"; 16 | @import "./widget/weui-cell/weui-gallery"; 17 | @import "./widget/weui-cell/weui-switch"; 18 | @import "./widget/weui-cell/weui-uploader"; 19 | 20 | // msg 21 | @import "./widget/weui-page/weui-msg"; 22 | 23 | // article 24 | @import "./widget/weui-page/weui-article"; 25 | 26 | // tab 27 | @import "./widget/weui-tab/weui-tab"; 28 | 29 | // progress 30 | @import "./widget/weui-progress/weui-progress"; 31 | 32 | // panel 33 | @import "./widget/weui-panel/weui-panel"; 34 | 35 | // media box 36 | @import "./widget/weui-media-box/weui-media-box"; 37 | 38 | // grid 39 | @import "./widget/weui-grid/weui-grid"; 40 | 41 | // copyright 42 | @import "./widget/weui-footer/weui-footer"; 43 | 44 | 45 | // flex 46 | @import "./widget/weui-flex/weui-flex"; 47 | 48 | // tips 49 | @import "./widget/weui-tips/weui-dialog"; 50 | @import "./widget/weui-tips/weui-toast"; 51 | @import "./widget/weui-tips/weui-mask"; 52 | @import "./widget/weui-tips/weui-actionsheet"; 53 | @import "./widget/weui-tips/weui-loadmore"; 54 | 55 | //searchbar 56 | @import "./widget/weui-searchbar/weui-searchbar"; 57 | 58 | // picker 59 | @import "./widget/weui-picker/weui-picker"; 60 | 61 | // animate 62 | @import "./widget/weui-animate/weui-animate"; 63 | 64 | // agree 65 | @import "./widget/weui-agree/weui-agree"; 66 | 67 | // loading 68 | @import "./widget/weui-loading/weui-loading"; 69 | 70 | // badge 71 | @import "./widget/weui-badge/weui-badge"; 72 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/switch.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-switch{display:inline-block;position:relative;font-size:14px;line-height:22px;height:22px;vertical-align:middle}.el-switch__label,.el-switch__label *{position:absolute;font-size:14px;display:inline-block}.el-switch .label-fade-enter,.el-switch .label-fade-leave-active{opacity:0}.el-switch.is-disabled .el-switch__core{border-color:rgb(228, 241, 241)!important;background:rgb(228, 241, 241)!important}.el-switch.is-disabled .el-switch__core span{background-color:rgb(250, 254, 253)!important}.el-switch.is-disabled .el-switch__core~.el-switch__label *{color:rgb(250, 254, 253)!important}.el-switch.is-disabled .el-switch__input:checked+.el-switch__core{border-color:rgb(228, 241, 241);background-color:rgb(228, 241, 241)}.el-switch.is-disabled .el-switch__core,.el-switch.is-disabled .el-switch__label{cursor:not-allowed}.el-switch__core,.el-switch__label{width:46px;height:22px;cursor:pointer}.el-switch__label{transition:.2s;z-index:10;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.el-switch__label *{line-height:1;top:4px;color:#fff}.el-switch__label--left i{left:6px}.el-switch__label--right i{right:6px}.el-switch__input{display:none}.el-switch__input:checked+.el-switch__core{border-color:#18c79c;background-color:#18c79c}.el-switch__core{margin:0;display:inline-block;position:relative;border:1px solid rgb(191, 217, 214);outline:0;border-radius:12px;box-sizing:border-box;background:rgb(191, 217, 214);transition:border-color .3s,background-color .3s}.el-switch__core .el-switch__button{top:0;left:0;position:absolute;border-radius:100%;transition:transform .3s;width:16px;height:16px;z-index:20;background-color:#fff}.el-switch--wide .el-switch__label.el-switch__label--left span{left:10px}.el-switch--wide .el-switch__label.el-switch__label--right span{right:10px} -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/switch.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-switch{display:inline-block;position:relative;font-size:14px;line-height:22px;height:22px;vertical-align:middle}.el-switch__label,.el-switch__label *{position:absolute;font-size:14px;display:inline-block}.el-switch .label-fade-enter,.el-switch .label-fade-leave-active{opacity:0}.el-switch.is-disabled .el-switch__core{border-color:rgb(228, 232, 241)!important;background:rgb(228, 232, 241)!important}.el-switch.is-disabled .el-switch__core span{background-color:rgb(250, 253, 254)!important}.el-switch.is-disabled .el-switch__core~.el-switch__label *{color:rgb(250, 253, 254)!important}.el-switch.is-disabled .el-switch__input:checked+.el-switch__core{border-color:rgb(228, 232, 241);background-color:rgb(228, 232, 241)}.el-switch.is-disabled .el-switch__core,.el-switch.is-disabled .el-switch__label{cursor:not-allowed}.el-switch__core,.el-switch__label{width:46px;height:22px;cursor:pointer}.el-switch__label{transition:.2s;z-index:10;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.el-switch__label *{line-height:1;top:4px;color:#fff}.el-switch__label--left i{left:6px}.el-switch__label--right i{right:6px}.el-switch__input{display:none}.el-switch__input:checked+.el-switch__core{border-color:#1d8ce0;background-color:#1d8ce0}.el-switch__core{margin:0;display:inline-block;position:relative;border:1px solid rgb(191, 203, 217);outline:0;border-radius:12px;box-sizing:border-box;background:rgb(191, 203, 217);transition:border-color .3s,background-color .3s}.el-switch__core .el-switch__button{top:0;left:0;position:absolute;border-radius:100%;transition:transform .3s;width:16px;height:16px;z-index:20;background-color:#fff}.el-switch--wide .el-switch__label.el-switch__label--left span{left:10px}.el-switch--wide .el-switch__label.el-switch__label--right span{right:10px} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/popover.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-popover{position:absolute;background:#fff;min-width:150px;border-radius:2px;border:1px solid rgb(209, 229, 227);padding:10px;z-index:2000;font-size:12px;box-shadow:0 2px 4px 0 rgba(0,0,0,.12),0 0 6px 0 rgba(0,0,0,.04)}.el-popover .popper__arrow,.el-popover .popper__arrow::after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.el-popover .popper__arrow{border-width:6px}.el-popover .popper__arrow::after{content:" ";border-width:6px}.el-popover[x-placement^=top]{margin-bottom:12px}.el-popover[x-placement^=top] .popper__arrow{bottom:-6px;left:50%;margin-right:3px;border-top-color:rgb(209, 229, 227);border-bottom-width:0}.el-popover[x-placement^=top] .popper__arrow::after{bottom:1px;margin-left:-6px;border-top-color:#fff;border-bottom-width:0}.el-popover[x-placement^=bottom]{margin-top:12px}.el-popover[x-placement^=bottom] .popper__arrow{top:-6px;left:50%;margin-right:3px;border-top-width:0;border-bottom-color:rgb(209, 229, 227)}.el-popover[x-placement^=bottom] .popper__arrow::after{top:1px;margin-left:-6px;border-top-width:0;border-bottom-color:#fff}.el-popover[x-placement^=right]{margin-left:12px}.el-popover[x-placement^=right] .popper__arrow{top:50%;left:-6px;margin-bottom:3px;border-right-color:rgb(209, 229, 227);border-left-width:0}.el-popover[x-placement^=right] .popper__arrow::after{bottom:-6px;left:1px;border-right-color:#fff;border-left-width:0}.el-popover[x-placement^=left]{margin-right:12px}.el-popover[x-placement^=left] .popper__arrow{top:50%;right:-6px;margin-bottom:3px;border-right-width:0;border-left-color:rgb(209, 229, 227)}.el-popover[x-placement^=left] .popper__arrow::after{right:1px;bottom:-6px;margin-left:-6px;border-right-width:0;border-left-color:#fff}.el-popover__title{color:rgb(31, 61, 57);font-size:13px;line-height:1;margin-bottom:9px} -------------------------------------------------------------------------------- /src/styles/widget/weui-cell/weui-switch.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-cell_switch{ 4 | padding-top: (@weuiCellHeight - @weuiSwitchHeight) / 2; 5 | padding-bottom: (@weuiCellHeight - @weuiSwitchHeight) / 2; 6 | } 7 | .weui-switch{ 8 | appearance: none; 9 | } 10 | .weui-switch, 11 | .weui-switch-cp__box{ 12 | position: relative; 13 | width: 52px; 14 | height: @weuiSwitchHeight; 15 | border: 1px solid #DFDFDF; 16 | outline: 0; 17 | border-radius: 16px; 18 | box-sizing: border-box; 19 | background-color: #DFDFDF; 20 | transition: background-color .1s, border .1s; 21 | 22 | &:before{ 23 | content: " "; 24 | position: absolute; 25 | top: 0; 26 | left: 0; 27 | width: 50px; 28 | height: @weuiSwitchHeight - 2; 29 | border-radius: 15px; 30 | background-color: #FDFDFD; 31 | transition:transform .35s cubic-bezier(0.45, 1, 0.4, 1); 32 | } 33 | &:after{ 34 | content: " "; 35 | position: absolute; 36 | top: 0; 37 | left: 0; 38 | width: @weuiSwitchHeight - 2; 39 | height: @weuiSwitchHeight - 2; 40 | border-radius: 15px; 41 | background-color: #FFFFFF; 42 | box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4); 43 | transition:transform .35s cubic-bezier(0.4, 0.4, 0.25, 1.35); 44 | } 45 | } 46 | .weui-switch:checked, 47 | .weui-switch-cp__input:checked ~ .weui-switch-cp__box{ 48 | border-color: #04BE02; 49 | background-color: #04BE02; 50 | &:before { 51 | transform: scale(0); 52 | } 53 | &:after { 54 | transform: translateX(20px); 55 | } 56 | } 57 | 58 | // 兼容IE Edge的版本 59 | .weui-switch-cp__input{ 60 | position: absolute; 61 | left: -9999px; 62 | } 63 | .weui-switch-cp__box{ 64 | display: block; 65 | } -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/popover.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-popover{position:absolute;background:#fff;min-width:150px;border-radius:2px;border:1px solid rgb(209, 219, 229);padding:10px;z-index:2000;font-size:12px;box-shadow:0 2px 4px 0 rgba(0,0,0,.12),0 0 6px 0 rgba(0,0,0,.04)}.el-popover .popper__arrow,.el-popover .popper__arrow::after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.el-popover .popper__arrow{border-width:6px}.el-popover .popper__arrow::after{content:" ";border-width:6px}.el-popover[x-placement^=top]{margin-bottom:12px}.el-popover[x-placement^=top] .popper__arrow{bottom:-6px;left:50%;margin-right:3px;border-top-color:rgb(209, 219, 229);border-bottom-width:0}.el-popover[x-placement^=top] .popper__arrow::after{bottom:1px;margin-left:-6px;border-top-color:#fff;border-bottom-width:0}.el-popover[x-placement^=bottom]{margin-top:12px}.el-popover[x-placement^=bottom] .popper__arrow{top:-6px;left:50%;margin-right:3px;border-top-width:0;border-bottom-color:rgb(209, 219, 229)}.el-popover[x-placement^=bottom] .popper__arrow::after{top:1px;margin-left:-6px;border-top-width:0;border-bottom-color:#fff}.el-popover[x-placement^=right]{margin-left:12px}.el-popover[x-placement^=right] .popper__arrow{top:50%;left:-6px;margin-bottom:3px;border-right-color:rgb(209, 219, 229);border-left-width:0}.el-popover[x-placement^=right] .popper__arrow::after{bottom:-6px;left:1px;border-right-color:#fff;border-left-width:0}.el-popover[x-placement^=left]{margin-right:12px}.el-popover[x-placement^=left] .popper__arrow{top:50%;right:-6px;margin-bottom:3px;border-right-width:0;border-left-color:rgb(209, 219, 229)}.el-popover[x-placement^=left] .popper__arrow::after{right:1px;bottom:-6px;margin-left:-6px;border-right-width:0;border-left-color:#fff}.el-popover__title{color:rgb(31, 45, 61);font-size:13px;line-height:1;margin-bottom:9px} -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 个人主页(http://chen1218chen.github.io) 2 | 3 | ### Usage 4 | 5 | This is a project template for [vue-cli](https://github.com/vuejs/vue-cli). 6 | 7 | github上找到某大神的一个基于vue-cli模板的vueAdmin后台管理的模板,根据项目需求改成一个多页面多路由的vue项目。 8 | PC端:后台管理页面,单独的页面入口,单独的路由。 9 | 移动端:业务展示页面,单独的页面入口,单独的路由。 10 | 踩了无数的坑,终于是初见效果了,随后继续优化更新 11 | 12 | ## Install 13 | 14 | ``` bash 15 | # install dependencies 16 | npm install 17 | 18 | # serve with hot reload at localhost:8088 19 | npm run dev 20 | 21 | # build for production with minification 22 | npm run build 23 | 24 | ``` 25 | 26 | PC端 [http://localhost:8088/modules/index.html][1] 27 | 28 | 移动APP [http://localhost:8088/modules/index.html][2] 29 | 30 | ## 多页面配置 31 | vue2.0版本多页面入口,是由webpack配置来完成的,我的项目文件结构如下 32 | ``` 33 | webpack 34 | |---build 35 | |---config 36 | |---dist 37 | |---route 路由 38 | |---src 39 | |---api axios请求 40 | |---assets 资源 41 | |---common 公共js资源目录 42 | |---components组件 43 | |---modules各个模块 44 | |---index index模块 45 | |---views 组件 46 | |---index.html 47 | |---index.js 48 | |---index.vue 49 | |---phone phone模块 50 | |---phone.html 51 | |---phone.js 52 | |---phone.vue 53 | |---phone 组件 54 | ``` 55 | 56 | 57 | ### Browser Support 58 | 59 | Modern browsers and Internet Explorer 10+. 60 | 61 | ## snapshots 62 | ![image](https://raw.githubusercontent.com/taylorchen709/markdown-images/master/vueadmin/login.png) 63 | 64 | ![image](https://raw.githubusercontent.com/taylorchen709/markdown-images/master/vueadmin/main.png) 65 | 66 | ![image](https://raw.githubusercontent.com/taylorchen709/markdown-images/master/vueadmin/edit.jpg) 67 | 68 | ### License 69 | [MIT](http://opensource.org/licenses/MIT) 70 | 71 | 72 | [1]: http://localhost:8088/modules/index.html 73 | [2]: http://localhost:8088/modules/phone.html 74 | -------------------------------------------------------------------------------- /src/styles/widget/weui-cell/weui-cell_global.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | /* 4 | z-index: 5 | 0: .weui-swiped-btn 6 | 1: .weui-cell_swiped .weui-cell__bd 7 | 2: .weui-cells和.weui-cell的1px线 8 | */ 9 | 10 | .weui-cells { 11 | margin-top: @weuiCellsMarginTop; 12 | background-color: @weuiCellBg; 13 | line-height: @weuiCellLineHeight; 14 | font-size: @weuiCellFontSize; //cell中间有效高度23px,跟客户端默认图标尺寸一致 15 | 16 | overflow: hidden; //因为每个cell的border使用before元素left搞的,ie下伪元素的containing block估计跟标准不同,在cell上用oh不生效 17 | 18 | // onepx 19 | position: relative; 20 | &:before { 21 | .setTopLine(@weuiCellBorderColor); 22 | z-index: 2; 23 | } 24 | &:after { 25 | .setBottomLine(@weuiCellBorderColor); 26 | z-index: 2; 27 | } 28 | } 29 | 30 | .weui-cells__title { 31 | margin-top: .77em; // 15px - 行高 32 | margin-bottom: .3em; // 8px - 行高 33 | padding-left: @weuiCellGapH; 34 | padding-right: @weuiCellGapH; 35 | color: @weuiTextColorGray; 36 | font-size: @weuiCellTipsFontSize; 37 | 38 | & + .weui-cells { 39 | margin-top: 0; 40 | } 41 | } 42 | 43 | .weui-cells__tips { 44 | margin-top: .3em; // 8px - 行高 45 | color: @weuiTextColorGray; 46 | padding-left: @weuiCellGapH; 47 | padding-right: @weuiCellGapH; 48 | font-size: @weuiCellTipsFontSize; 49 | } 50 | 51 | .weui-cell { 52 | padding: @weuiCellGapV @weuiCellGapH; 53 | position: relative; //这个是为了兼容cells容器onepx方案被before挡住而做的 54 | display: flex; 55 | align-items: center; 56 | &:before { 57 | .setTopLine(@weuiCellBorderColor); 58 | left: @weuiCellGapH; 59 | z-index: 2; 60 | } 61 | &:first-child { 62 | &:before { 63 | display: none; 64 | } 65 | } 66 | } 67 | .weui-cell_primary{ 68 | align-items: flex-start; 69 | } 70 | .weui-cell__bd{ 71 | flex: 1; 72 | } 73 | .weui-cell__ft { 74 | text-align: right; 75 | color: @weuiTextColorGray; 76 | } -------------------------------------------------------------------------------- /src/route/routesPhone.js: -------------------------------------------------------------------------------- 1 | import NotFound from '../modules/index/views/404.vue' 2 | import UploadInfo from '../modules/phone/phone/UploadInfo.vue' 3 | import Grid from '../modules/phone/phone/Grid.vue' 4 | import Timeline from '../modules/phone/phone/timeline.vue' 5 | import Map from '../modules/phone/phone/map.vue' 6 | import List from '../modules/phone/phone/list.vue' 7 | import Element from '../modules/phone/phone/element.vue' 8 | import Telephone from '../modules/phone/phone/telephone.vue' 9 | 10 | import Vue from 'vue' 11 | import VueRouter from 'vue-router' 12 | 13 | Vue.use(VueRouter) 14 | 15 | const router = new VueRouter({ 16 | // mode: 'history', 17 | routes:[ 18 | { 19 | path: '/', 20 | redirect: '/grid' 21 | }, 22 | { 23 | path: '/grid', 24 | component: Grid, 25 | name: 'Grid', 26 | // hidden: true 27 | }, 28 | { 29 | path: '/grid/uploadInfo', 30 | component: UploadInfo, 31 | name: '上传', 32 | // hidden: true 33 | }, 34 | { 35 | path: '/grid/timeline', 36 | component: Timeline, 37 | name: '时间轴', 38 | // hidden: true 39 | }, 40 | { 41 | path: '/grid/telephone', 42 | component: Telephone, 43 | name: '联系电话', 44 | // hidden: true 45 | }, 46 | { 47 | path: '/grid/map', 48 | component: Map, 49 | name: '地图', 50 | // hidden: true 51 | }, 52 | { 53 | path: '/grid/list', 54 | component: List, 55 | name: 'list', 56 | hidden: true 57 | }, 58 | { 59 | path: '/grid/element', 60 | component: Element, 61 | name: 'element', 62 | hidden: true 63 | }, 64 | { 65 | path: '/404', 66 | component: NotFound, 67 | name: '', 68 | hidden: true 69 | }/*, 70 | { 71 | path: '*', 72 | hidden: true, 73 | redirect: { path: '/404' } 74 | }*/ 75 | ] 76 | }); 77 | 78 | export default router; -------------------------------------------------------------------------------- /src/styles/widget/weui-media-box/weui-media-box.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-media-box { 4 | padding: 15px; 5 | position: relative; 6 | &:before { 7 | .setTopLine(@weuiLineColorLight); 8 | left: 15px; 9 | } 10 | &:first-child { 11 | &:before { 12 | display: none 13 | } 14 | } 15 | 16 | a&{ 17 | color:#000000; 18 | .setTapColor(); 19 | &:active{ 20 | background-color:#ECECEC; 21 | } 22 | } 23 | } 24 | .weui-media-box__title { 25 | font-weight: 400; 26 | font-size: 17px; 27 | .ellipsis(); 28 | word-wrap: break-word; 29 | word-break: break-all; 30 | } 31 | .weui-media-box__desc { 32 | color: @weuiTextColorGray; 33 | font-size: 13px; 34 | line-height: 1.2; 35 | .ellipsisLn(2); 36 | } 37 | .weui-media-box__info { 38 | margin-top: 15px; 39 | padding-bottom: 5px; 40 | font-size: 13px; 41 | color: #CECECE; 42 | line-height: 1em; 43 | list-style: none; 44 | overflow: hidden; 45 | } 46 | .weui-media-box__info__meta { 47 | float: left; 48 | padding-right: 1em; 49 | } 50 | .weui-media-box__info__meta_extra { 51 | padding-left: 1em; 52 | border-left: 1px solid #CECECE; 53 | } 54 | .weui-media-box_text { 55 | .weui-media-box__title { 56 | margin-bottom: 8px; 57 | } 58 | } 59 | .weui-media-box_appmsg { 60 | display: flex; 61 | align-items: center; 62 | .weui-media-box__hd { 63 | margin-right: .8em; 64 | width: 60px; 65 | height: 60px; 66 | line-height: 60px; 67 | text-align: center; 68 | } 69 | .weui-media-box__thumb { 70 | width: 100%; 71 | max-height: 100%; 72 | vertical-align: top; 73 | } 74 | .weui-media-box__bd { 75 | flex: 1; 76 | min-width: 0; 77 | } 78 | } 79 | .weui-media-box_small-appmsg { 80 | padding: 0; 81 | .weui-cells { 82 | margin-top: 0; 83 | &:before { 84 | display: none; 85 | } 86 | } 87 | } -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/icon.css: -------------------------------------------------------------------------------- 1 | @font-face{font-family:element-icons;src:url(fonts/element-icons.woff?t=1472440741) format('woff'),url(fonts/element-icons.ttf?t=1472440741) format('truetype');font-weight:400;font-style:normal}[class*=" el-icon-"],[class^=el-icon-]{font-family:element-icons!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}.el-icon-arrow-down:before{content:"\e600"}.el-icon-arrow-left:before{content:"\e601"}.el-icon-arrow-right:before{content:"\e602"}.el-icon-arrow-up:before{content:"\e603"}.el-icon-caret-bottom:before{content:"\e604"}.el-icon-caret-left:before{content:"\e605"}.el-icon-caret-right:before{content:"\e606"}.el-icon-caret-top:before{content:"\e607"}.el-icon-check:before{content:"\e608"}.el-icon-circle-check:before{content:"\e609"}.el-icon-circle-close:before{content:"\e60a"}.el-icon-circle-cross:before{content:"\e60b"}.el-icon-close:before{content:"\e60c"}.el-icon-upload:before{content:"\e60d"}.el-icon-d-arrow-left:before{content:"\e60e"}.el-icon-d-arrow-right:before{content:"\e60f"}.el-icon-d-caret:before{content:"\e610"}.el-icon-date:before{content:"\e611"}.el-icon-delete:before{content:"\e612"}.el-icon-document:before{content:"\e613"}.el-icon-edit:before{content:"\e614"}.el-icon-information:before{content:"\e615"}.el-icon-loading:before{content:"\e616"}.el-icon-menu:before{content:"\e617"}.el-icon-message:before{content:"\e618"}.el-icon-minus:before{content:"\e619"}.el-icon-more:before{content:"\e61a"}.el-icon-picture:before{content:"\e61b"}.el-icon-plus:before{content:"\e61c"}.el-icon-search:before{content:"\e61d"}.el-icon-setting:before{content:"\e61e"}.el-icon-share:before{content:"\e61f"}.el-icon-star-off:before{content:"\e620"}.el-icon-star-on:before{content:"\e621"}.el-icon-time:before{content:"\e622"}.el-icon-warning:before{content:"\e623"}.el-icon-delete2:before{content:"\e624"}.el-icon-upload2:before{content:"\e627"}.el-icon-view:before{content:"\e626"}.el-icon-loading{animation:rotating 1s linear infinite}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@keyframes rotating{0%{transform:rotateZ(0)}100%{transform:rotateZ(360deg)}} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/icon.css: -------------------------------------------------------------------------------- 1 | @font-face{font-family:element-icons;src:url(fonts/element-icons.woff?t=1472440741) format('woff'),url(fonts/element-icons.ttf?t=1472440741) format('truetype');font-weight:400;font-style:normal}[class*=" el-icon-"],[class^=el-icon-]{font-family:element-icons!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}.el-icon-arrow-down:before{content:"\e600"}.el-icon-arrow-left:before{content:"\e601"}.el-icon-arrow-right:before{content:"\e602"}.el-icon-arrow-up:before{content:"\e603"}.el-icon-caret-bottom:before{content:"\e604"}.el-icon-caret-left:before{content:"\e605"}.el-icon-caret-right:before{content:"\e606"}.el-icon-caret-top:before{content:"\e607"}.el-icon-check:before{content:"\e608"}.el-icon-circle-check:before{content:"\e609"}.el-icon-circle-close:before{content:"\e60a"}.el-icon-circle-cross:before{content:"\e60b"}.el-icon-close:before{content:"\e60c"}.el-icon-upload:before{content:"\e60d"}.el-icon-d-arrow-left:before{content:"\e60e"}.el-icon-d-arrow-right:before{content:"\e60f"}.el-icon-d-caret:before{content:"\e610"}.el-icon-date:before{content:"\e611"}.el-icon-delete:before{content:"\e612"}.el-icon-document:before{content:"\e613"}.el-icon-edit:before{content:"\e614"}.el-icon-information:before{content:"\e615"}.el-icon-loading:before{content:"\e616"}.el-icon-menu:before{content:"\e617"}.el-icon-message:before{content:"\e618"}.el-icon-minus:before{content:"\e619"}.el-icon-more:before{content:"\e61a"}.el-icon-picture:before{content:"\e61b"}.el-icon-plus:before{content:"\e61c"}.el-icon-search:before{content:"\e61d"}.el-icon-setting:before{content:"\e61e"}.el-icon-share:before{content:"\e61f"}.el-icon-star-off:before{content:"\e620"}.el-icon-star-on:before{content:"\e621"}.el-icon-time:before{content:"\e622"}.el-icon-warning:before{content:"\e623"}.el-icon-delete2:before{content:"\e624"}.el-icon-upload2:before{content:"\e627"}.el-icon-view:before{content:"\e626"}.el-icon-loading{animation:rotating 1s linear infinite}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@keyframes rotating{0%{transform:rotateZ(0)}100%{transform:rotateZ(360deg)}} -------------------------------------------------------------------------------- /src/modules/index/views/nav1/Info.vue: -------------------------------------------------------------------------------- 1 | 36 | 76 | 77 | -------------------------------------------------------------------------------- /src/styles/widget/weui-cell/weui-form/weui-form-preview.less: -------------------------------------------------------------------------------- 1 | @import "../../../base/fn"; 2 | 3 | .weui-form-preview{ 4 | position: relative; 5 | background-color: #FFFFFF; 6 | &:before{ 7 | .setTopLine(@weuiCellBorderColor); 8 | } 9 | &:after{ 10 | .setBottomLine(@weuiCellBorderColor); 11 | } 12 | } 13 | .weui-form-preview__hd{ 14 | position: relative; 15 | padding: @weuiCellGapV @weuiCellGapH; 16 | text-align: right; 17 | line-height: 2.5em; 18 | &:after{ 19 | .setBottomLine(@weuiCellBorderColor); 20 | left: @weuiCellGapH; 21 | } 22 | .weui-form-preview__value{ 23 | font-style: normal; 24 | font-size: 1.6em; 25 | } 26 | } 27 | .weui-form-preview__bd{ 28 | padding: @weuiCellGapV @weuiCellGapH; 29 | font-size: .9em; 30 | text-align: right; 31 | color: @weuiTextColorGray; 32 | line-height: 2; 33 | } 34 | .weui-form-preview__ft{ 35 | position: relative; 36 | line-height: 50px; 37 | display: flex; 38 | &:before { 39 | .setTopLine(@weuiDialogLineColor); 40 | } 41 | } 42 | .weui-form-preview__item{ 43 | overflow: hidden; 44 | } 45 | .weui-form-preview__label{ 46 | float: left; 47 | margin-right: 1em; 48 | min-width: 4em; 49 | color: @weuiTextColorGray; 50 | text-align: justify; 51 | text-align-last: justify; 52 | } 53 | .weui-form-preview__value{ 54 | display: block; 55 | overflow: hidden; 56 | word-break:normal; 57 | word-wrap: break-word; 58 | } 59 | .weui-form-preview__btn { 60 | position: relative; 61 | display: block; 62 | flex: 1; 63 | color: @weuiDialogLinkColor; 64 | text-align: center; 65 | .setTapColor(); 66 | button&{ 67 | background-color: transparent; 68 | border: 0; 69 | outline: 0; 70 | line-height: inherit; 71 | font-size: inherit; 72 | } 73 | &:active { 74 | background-color: @weuiDialogLinkActiveBc; 75 | } 76 | &:after { 77 | .setLeftLine(@weuiDialogLineColor); 78 | } 79 | &:first-child { 80 | &:after { 81 | display: none; 82 | } 83 | } 84 | } 85 | .weui-form-preview__btn_default { 86 | color: @weuiTextColorGray; 87 | } 88 | .weui-form-preview__btn_primary { 89 | color: #0BB20C; 90 | } -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vue-cli-multi-page", 3 | "version": "1.0.0", 4 | "description": "vue-cli multi page demo,one is for PC,other is for Phone", 5 | "author": "chen12181chen ", 6 | "license": "MIT", 7 | "scripts": { 8 | "dev": "node build/dev-server.js", 9 | "build": "node build/build.js" 10 | }, 11 | "dependencies": { 12 | "axios": "^0.15.3", 13 | "echarts": "^3.3.2", 14 | "element-ui": "^1.1.6", 15 | "font-awesome": "^4.7.0", 16 | "nprogress": "^0.2.0", 17 | "vee-validate": "^2.0.0-beta.25", 18 | "vue": "^2.1.10", 19 | "vue-router": "^2.1.2", 20 | "vuex": "^2.0.0-rc.6", 21 | "vux": "^2.2.2", 22 | "weui": "^1.1.2" 23 | }, 24 | "devDependencies": { 25 | "autoprefixer": "^6.6.1", 26 | "axios-mock-adapter": "^1.7.1", 27 | "babel-core": "^6.21.0", 28 | "babel-loader": "^6.2.10", 29 | "babel-plugin-transform-runtime": "^6.0.0", 30 | "babel-polyfill": "^6.16.0", 31 | "babel-preset-es2015": "^6.0.0", 32 | "babel-preset-stage-2": "^6.0.0", 33 | "babel-register": "^6.0.0", 34 | "chalk": "^1.1.3", 35 | "connect-history-api-fallback": "^1.1.0", 36 | "css-loader": "^0.26.1", 37 | "eventsource-polyfill": "^0.9.6", 38 | "express": "^4.13.3", 39 | "extract-text-webpack-plugin": "^1.0.1", 40 | "file-loader": "^0.9.0", 41 | "friendly-errors-webpack-plugin": "^1.6.1", 42 | "function-bind": "^1.0.2", 43 | "glob": "^7.1.2", 44 | "html-webpack-plugin": "^2.26.0", 45 | "http-proxy-middleware": "^0.17.3", 46 | "json-loader": "^0.5.4", 47 | "less": "^2.7.2", 48 | "less-loader": "^4.0.3", 49 | "mockjs": "^1.0.1-beta3", 50 | "node-sass": "^4.5.0", 51 | "opn": "^4.0.2", 52 | "ora": "^1.0.0", 53 | "sass-loader": "^6.0.0", 54 | "semver": "^5.3.0", 55 | "shelljs": "^0.7.6", 56 | "url-loader": "^0.5.7", 57 | "vue-loader": "^10.0.2", 58 | "vue-style-loader": "^1.0.0", 59 | "vue-template-compiler": "^2.1.10", 60 | "vux-loader": "^1.0.61", 61 | "webpack": "^1.14.0", 62 | "webpack-bundle-analyzer": "^2.8.2", 63 | "webpack-dev-middleware": "^1.9.0", 64 | "webpack-hot-middleware": "^2.15.0", 65 | "webpack-merge": "^2.4.0" 66 | }, 67 | "engines": { 68 | "node": ">= 4.0.0", 69 | "npm": ">= 3.0.0" 70 | } 71 | } 72 | -------------------------------------------------------------------------------- /src/modules/phone/phone/telephone.vue: -------------------------------------------------------------------------------- 1 | 35 | 70 | 71 | -------------------------------------------------------------------------------- /src/modules/index/views/nav1/user.vue: -------------------------------------------------------------------------------- 1 | 37 | 80 | 81 | -------------------------------------------------------------------------------- /src/modules/phone/phone/grid.vue: -------------------------------------------------------------------------------- 1 | 52 | 71 | 72 | -------------------------------------------------------------------------------- /src/assets/theme/theme-green/step.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-step.is-horizontal,.el-step.is-vertical .el-step__head,.el-step.is-vertical .el-step__main,.el-step__line{display:inline-block}.el-step{position:relative;vertical-align:top}.el-step.is-vertical .el-step__main{padding-left:10px}.el-step__line{position:absolute;border-color:inherit;background-color:rgb(191, 217, 214)}.el-step__line.is-vertical{width:2px;box-sizing:border-box;top:32px;bottom:0;left:15px}.el-step__line.is-horizontal{top:15px;height:2px;left:32px;right:0}.el-step__line.is-icon.is-horizontal{right:4px}.el-step__line-inner{display:block;border-width:1px;border-style:solid;border-color:inherit;transition:all 150ms;width:0;height:0}.el-step__icon{display:block;line-height:28px}.el-step__icon>*{line-height:inherit;vertical-align:middle}.el-step__head{width:28px;height:28px;border-radius:50%;background-color:transparent;text-align:center;line-height:28px;font-size:28px;vertical-align:top;transition:all 150ms}.el-step__head.is-finish{color:#18c79c;border-color:#18c79c}.el-step__head.is-error{color:#ff4949;border-color:#ff4949}.el-step__head.is-success{color:#13ce66;border-color:#13ce66}.el-step__head.is-process,.el-step__head.is-wait{color:rgb(191, 217, 214);border-color:rgb(191, 217, 214)}.el-step__head.is-text{font-size:14px;border-width:2px;border-style:solid}.el-step__head.is-text.is-finish{color:#fff;background-color:#18c79c;border-color:#18c79c}.el-step__head.is-text.is-error{color:#fff;background-color:#ff4949;border-color:#ff4949}.el-step__head.is-text.is-success{color:#fff;background-color:#13ce66;border-color:#13ce66}.el-step__head.is-text.is-wait{color:rgb(191, 217, 214);background-color:#fff;border-color:rgb(191, 217, 214)}.el-step__head.is-text.is-process{color:#fff;background-color:rgb(191, 217, 214);border-color:rgb(191, 217, 214)}.el-step__main{white-space:normal;padding-right:10px;text-align:left}.el-step__title{font-size:14px;line-height:32px;display:inline-block}.el-step__title.is-finish{font-weight:700;color:#18c79c}.el-step__title.is-error{font-weight:700;color:#ff4949}.el-step__title.is-success{font-weight:700;color:#13ce66}.el-step__title.is-wait{font-weight:400;color:rgb(151, 190, 187)}.el-step__title.is-process{font-weight:700;color:rgb(72, 106, 103)}.el-step__description{font-size:12px;font-weight:400;line-height:14px}.el-step__description.is-finish{color:#18c79c}.el-step__description.is-error{color:#ff4949}.el-step__description.is-success{color:#13ce66}.el-step__description.is-wait{color:rgb(191, 217, 214)}.el-step__description.is-process{color:rgb(131, 165, 162)} -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/step.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-step.is-horizontal,.el-step.is-vertical .el-step__head,.el-step.is-vertical .el-step__main,.el-step__line{display:inline-block}.el-step{position:relative;vertical-align:top}.el-step.is-vertical .el-step__main{padding-left:10px}.el-step__line{position:absolute;border-color:inherit;background-color:rgb(191, 203, 217)}.el-step__line.is-vertical{width:2px;box-sizing:border-box;top:32px;bottom:0;left:15px}.el-step__line.is-horizontal{top:15px;height:2px;left:32px;right:0}.el-step__line.is-icon.is-horizontal{right:4px}.el-step__line-inner{display:block;border-width:1px;border-style:solid;border-color:inherit;transition:all 150ms;width:0;height:0}.el-step__icon{display:block;line-height:28px}.el-step__icon>*{line-height:inherit;vertical-align:middle}.el-step__head{width:28px;height:28px;border-radius:50%;background-color:transparent;text-align:center;line-height:28px;font-size:28px;vertical-align:top;transition:all 150ms}.el-step__head.is-finish{color:#1d8ce0;border-color:#1d8ce0}.el-step__head.is-error{color:#ff4949;border-color:#ff4949}.el-step__head.is-success{color:#13ce66;border-color:#13ce66}.el-step__head.is-process,.el-step__head.is-wait{color:rgb(191, 203, 217);border-color:rgb(191, 203, 217)}.el-step__head.is-text{font-size:14px;border-width:2px;border-style:solid}.el-step__head.is-text.is-finish{color:#fff;background-color:#1d8ce0;border-color:#1d8ce0}.el-step__head.is-text.is-error{color:#fff;background-color:#ff4949;border-color:#ff4949}.el-step__head.is-text.is-success{color:#fff;background-color:#13ce66;border-color:#13ce66}.el-step__head.is-text.is-wait{color:rgb(191, 203, 217);background-color:#fff;border-color:rgb(191, 203, 217)}.el-step__head.is-text.is-process{color:#fff;background-color:rgb(191, 203, 217);border-color:rgb(191, 203, 217)}.el-step__main{white-space:normal;padding-right:10px;text-align:left}.el-step__title{font-size:14px;line-height:32px;display:inline-block}.el-step__title.is-finish{font-weight:700;color:#1d8ce0}.el-step__title.is-error{font-weight:700;color:#ff4949}.el-step__title.is-success{font-weight:700;color:#13ce66}.el-step__title.is-wait{font-weight:400;color:rgb(151, 168, 190)}.el-step__title.is-process{font-weight:700;color:rgb(72, 87, 106)}.el-step__description{font-size:12px;font-weight:400;line-height:14px}.el-step__description.is-finish{color:#1d8ce0}.el-step__description.is-error{color:#ff4949}.el-step__description.is-success{color:#13ce66}.el-step__description.is-wait{color:rgb(191, 203, 217)}.el-step__description.is-process{color:rgb(131, 145, 165)} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/tooltip.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-tooltip__popper{position:absolute;border-radius:4px;padding:10px;z-index:2000;font-size:12px;line-height:1.2}.el-tooltip__popper .popper__arrow,.el-tooltip__popper .popper__arrow::after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.el-tooltip__popper .popper__arrow{border-width:6px}.el-tooltip__popper .popper__arrow::after{content:" ";border-width:5px}.el-tooltip__popper[x-placement^=top]{margin-bottom:12px}.el-tooltip__popper[x-placement^=top] .popper__arrow{bottom:-6px;border-top-color:rgb(31, 61, 57);border-bottom-width:0}.el-tooltip__popper[x-placement^=top] .popper__arrow::after{bottom:1px;margin-left:-5px;border-top-color:rgb(31, 61, 57);border-bottom-width:0}.el-tooltip__popper[x-placement^=bottom]{margin-top:12px}.el-tooltip__popper[x-placement^=bottom] .popper__arrow{top:-6px;border-top-width:0;border-bottom-color:rgb(31, 61, 57)}.el-tooltip__popper[x-placement^=bottom] .popper__arrow::after{top:1px;margin-left:-5px;border-top-width:0;border-bottom-color:rgb(31, 61, 57)}.el-tooltip__popper[x-placement^=right]{margin-left:12px}.el-tooltip__popper[x-placement^=right] .popper__arrow{left:-6px;border-right-color:rgb(31, 61, 57);border-left-width:0}.el-tooltip__popper[x-placement^=right] .popper__arrow::after{bottom:-5px;left:1px;border-right-color:rgb(31, 61, 57);border-left-width:0}.el-tooltip__popper[x-placement^=left]{margin-right:12px}.el-tooltip__popper[x-placement^=left] .popper__arrow{right:-6px;border-right-width:0;border-left-color:rgb(31, 61, 57)}.el-tooltip__popper[x-placement^=left] .popper__arrow::after{right:1px;bottom:-5px;margin-left:-5px;border-right-width:0;border-left-color:rgb(31, 61, 57)}.el-tooltip__popper.is-light{background:#fff;border:1px solid rgb(31, 61, 57)}.el-tooltip__popper.is-light[x-placement^=top] .popper__arrow{border-top-color:rgb(31, 61, 57)}.el-tooltip__popper.is-light[x-placement^=top] .popper__arrow::after{border-top-color:#fff}.el-tooltip__popper.is-light[x-placement^=bottom] .popper__arrow{border-bottom-color:rgb(31, 61, 57)}.el-tooltip__popper.is-light[x-placement^=bottom] .popper__arrow::after{border-bottom-color:#fff}.el-tooltip__popper.is-light[x-placement^=left] .popper__arrow{border-left-color:rgb(31, 61, 57)}.el-tooltip__popper.is-light[x-placement^=left] .popper__arrow::after{border-left-color:#fff}.el-tooltip__popper.is-light[x-placement^=right] .popper__arrow{border-right-color:rgb(31, 61, 57)}.el-tooltip__popper.is-light[x-placement^=right] .popper__arrow::after{border-right-color:#fff}.el-tooltip__popper.is-dark{background:rgb(31, 61, 57);color:#fff} -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/tooltip.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-tooltip__popper{position:absolute;border-radius:4px;padding:10px;z-index:2000;font-size:12px;line-height:1.2}.el-tooltip__popper .popper__arrow,.el-tooltip__popper .popper__arrow::after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.el-tooltip__popper .popper__arrow{border-width:6px}.el-tooltip__popper .popper__arrow::after{content:" ";border-width:5px}.el-tooltip__popper[x-placement^=top]{margin-bottom:12px}.el-tooltip__popper[x-placement^=top] .popper__arrow{bottom:-6px;border-top-color:rgb(31, 45, 61);border-bottom-width:0}.el-tooltip__popper[x-placement^=top] .popper__arrow::after{bottom:1px;margin-left:-5px;border-top-color:rgb(31, 45, 61);border-bottom-width:0}.el-tooltip__popper[x-placement^=bottom]{margin-top:12px}.el-tooltip__popper[x-placement^=bottom] .popper__arrow{top:-6px;border-top-width:0;border-bottom-color:rgb(31, 45, 61)}.el-tooltip__popper[x-placement^=bottom] .popper__arrow::after{top:1px;margin-left:-5px;border-top-width:0;border-bottom-color:rgb(31, 45, 61)}.el-tooltip__popper[x-placement^=right]{margin-left:12px}.el-tooltip__popper[x-placement^=right] .popper__arrow{left:-6px;border-right-color:rgb(31, 45, 61);border-left-width:0}.el-tooltip__popper[x-placement^=right] .popper__arrow::after{bottom:-5px;left:1px;border-right-color:rgb(31, 45, 61);border-left-width:0}.el-tooltip__popper[x-placement^=left]{margin-right:12px}.el-tooltip__popper[x-placement^=left] .popper__arrow{right:-6px;border-right-width:0;border-left-color:rgb(31, 45, 61)}.el-tooltip__popper[x-placement^=left] .popper__arrow::after{right:1px;bottom:-5px;margin-left:-5px;border-right-width:0;border-left-color:rgb(31, 45, 61)}.el-tooltip__popper.is-light{background:#fff;border:1px solid rgb(31, 45, 61)}.el-tooltip__popper.is-light[x-placement^=top] .popper__arrow{border-top-color:rgb(31, 45, 61)}.el-tooltip__popper.is-light[x-placement^=top] .popper__arrow::after{border-top-color:#fff}.el-tooltip__popper.is-light[x-placement^=bottom] .popper__arrow{border-bottom-color:rgb(31, 45, 61)}.el-tooltip__popper.is-light[x-placement^=bottom] .popper__arrow::after{border-bottom-color:#fff}.el-tooltip__popper.is-light[x-placement^=left] .popper__arrow{border-left-color:rgb(31, 45, 61)}.el-tooltip__popper.is-light[x-placement^=left] .popper__arrow::after{border-left-color:#fff}.el-tooltip__popper.is-light[x-placement^=right] .popper__arrow{border-right-color:rgb(31, 45, 61)}.el-tooltip__popper.is-light[x-placement^=right] .popper__arrow::after{border-right-color:#fff}.el-tooltip__popper.is-dark{background:rgb(31, 45, 61);color:#fff} -------------------------------------------------------------------------------- /src/common/js/util.js: -------------------------------------------------------------------------------- 1 | var SIGN_REGEXP = /([yMdhsm])(\1*)/g; 2 | var DEFAULT_PATTERN = 'yyyy-MM-dd'; 3 | function padding(s, len) { 4 | var len = len - (s + '').length; 5 | for (var i = 0; i < len; i++) { s = '0' + s; } 6 | return s; 7 | }; 8 | 9 | export default { 10 | getQueryStringByName: function (name) { 11 | var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); 12 | var r = window.location.search.substr(1).match(reg); 13 | var context = ""; 14 | if (r != null) 15 | context = r[2]; 16 | reg = null; 17 | r = null; 18 | return context == null || context == "" || context == "undefined" ? "" : context; 19 | }, 20 | formatDate: { 21 | format: function (date, pattern) { 22 | pattern = pattern || DEFAULT_PATTERN; 23 | return pattern.replace(SIGN_REGEXP, function ($0) { 24 | switch ($0.charAt(0)) { 25 | case 'y': return padding(date.getFullYear(), $0.length); 26 | case 'M': return padding(date.getMonth() + 1, $0.length); 27 | case 'd': return padding(date.getDate(), $0.length); 28 | case 'w': return date.getDay() + 1; 29 | case 'h': return padding(date.getHours(), $0.length); 30 | case 'm': return padding(date.getMinutes(), $0.length); 31 | case 's': return padding(date.getSeconds(), $0.length); 32 | } 33 | }); 34 | }, 35 | parse: function (dateString, pattern) { 36 | var matchs1 = pattern.match(SIGN_REGEXP); 37 | var matchs2 = dateString.match(/(\d)+/g); 38 | if (matchs1.length == matchs2.length) { 39 | var _date = new Date(1970, 0, 1); 40 | for (var i = 0; i < matchs1.length; i++) { 41 | var _int = parseInt(matchs2[i]); 42 | var sign = matchs1[i]; 43 | switch (sign.charAt(0)) { 44 | case 'y': _date.setFullYear(_int); break; 45 | case 'M': _date.setMonth(_int - 1); break; 46 | case 'd': _date.setDate(_int); break; 47 | case 'h': _date.setHours(_int); break; 48 | case 'm': _date.setMinutes(_int); break; 49 | case 's': _date.setSeconds(_int); break; 50 | } 51 | } 52 | return _date; 53 | } 54 | return null; 55 | } 56 | } 57 | 58 | }; 59 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/checkbox.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-checkbox,.el-checkbox__input{white-space:nowrap;cursor:pointer;display:inline-block;position:relative}.el-checkbox{color:rgb(31, 45, 61);-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.el-checkbox+.el-checkbox{margin-left:15px}.el-checkbox__input{outline:0;line-height:1;vertical-align:middle}.el-checkbox__input.is-indeterminate .el-checkbox__inner{background-color:#1d8ce0;border-color:rgb(1, 130, 228)}.el-checkbox__input.is-indeterminate .el-checkbox__inner::before{content:'';position:absolute;display:block;border:1px solid #fff;margin-top:-1px;left:3px;right:3px;top:50%}.el-checkbox__input.is-indeterminate .el-checkbox__inner::after{display:none}.el-checkbox__input.is-focus .el-checkbox__inner{border-color:#1d8ce0}.el-checkbox__input.is-checked .el-checkbox__inner{background-color:#1d8ce0;border-color:rgb(1, 130, 228)}.el-checkbox__input.is-checked .el-checkbox__inner::after{-ms-transform:rotate(45deg) scaleY(1);transform:rotate(45deg) scaleY(1)}.el-checkbox__input.is-disabled .el-checkbox__inner{background-color:rgb(238, 241, 246);border-color:rgb(209, 219, 229);cursor:not-allowed}.el-checkbox__input.is-disabled .el-checkbox__inner::after{cursor:not-allowed;border-color:rgb(238, 241, 246)}.el-checkbox__input.is-disabled .el-checkbox__inner+.el-checkbox__label{cursor:not-allowed}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{background-color:rgb(209, 219, 229);border-color:rgb(209, 219, 229)}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner::after{border-color:#fff}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner{background-color:rgb(209, 219, 229);border-color:rgb(209, 219, 229)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner::before{border-color:#fff}.el-checkbox__input.is-disabled+.el-checkbox__label{color:#bbb;cursor:not-allowed}.el-checkbox__inner{display:inline-block;position:relative;border:1px solid rgb(191, 203, 217);border-radius:4px;box-sizing:border-box;width:18px;height:18px;background-color:#fff;z-index:1;transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46)}.el-checkbox__inner:hover{border-color:#1d8ce0}.el-checkbox__inner::after{box-sizing:content-box;content:"";border:2px solid #fff;border-left:0;border-top:0;height:8px;left:5px;position:absolute;top:1px;-ms-transform:rotate(45deg) scaleY(0);transform:rotate(45deg) scaleY(0);width:4px;transition:transform .15s cubic-bezier(.71,-.46,.88,.6) .05s;-ms-transform-origin:center;transform-origin:center}.el-checkbox__original{opacity:0;outline:0;position:absolute;margin:0;left:-999px}.el-checkbox__label{font-size:14px;padding-left:5px} -------------------------------------------------------------------------------- /src/assets/theme/theme-green/checkbox.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-checkbox,.el-checkbox__input{white-space:nowrap;cursor:pointer;display:inline-block;position:relative}.el-checkbox{color:rgb(31, 61, 57);-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.el-checkbox+.el-checkbox{margin-left:15px}.el-checkbox__input{outline:0;line-height:1;vertical-align:middle}.el-checkbox__input.is-indeterminate .el-checkbox__inner{background-color:#18c79c;border-color:rgb(1, 203, 152)}.el-checkbox__input.is-indeterminate .el-checkbox__inner::before{content:'';position:absolute;display:block;border:1px solid #fff;margin-top:-1px;left:3px;right:3px;top:50%}.el-checkbox__input.is-indeterminate .el-checkbox__inner::after{display:none}.el-checkbox__input.is-focus .el-checkbox__inner{border-color:#18c79c}.el-checkbox__input.is-checked .el-checkbox__inner{background-color:#18c79c;border-color:rgb(1, 203, 152)}.el-checkbox__input.is-checked .el-checkbox__inner::after{-ms-transform:rotate(45deg) scaleY(1);transform:rotate(45deg) scaleY(1)}.el-checkbox__input.is-disabled .el-checkbox__inner{background-color:rgb(238, 246, 246);border-color:rgb(209, 229, 227);cursor:not-allowed}.el-checkbox__input.is-disabled .el-checkbox__inner::after{cursor:not-allowed;border-color:rgb(238, 246, 246)}.el-checkbox__input.is-disabled .el-checkbox__inner+.el-checkbox__label{cursor:not-allowed}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{background-color:rgb(209, 229, 227);border-color:rgb(209, 229, 227)}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner::after{border-color:#fff}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner{background-color:rgb(209, 229, 227);border-color:rgb(209, 229, 227)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner::before{border-color:#fff}.el-checkbox__input.is-disabled+.el-checkbox__label{color:#bbb;cursor:not-allowed}.el-checkbox__inner{display:inline-block;position:relative;border:1px solid rgb(191, 217, 214);border-radius:4px;box-sizing:border-box;width:18px;height:18px;background-color:#fff;z-index:1;transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46)}.el-checkbox__inner:hover{border-color:#18c79c}.el-checkbox__inner::after{box-sizing:content-box;content:"";border:2px solid #fff;border-left:0;border-top:0;height:8px;left:5px;position:absolute;top:1px;-ms-transform:rotate(45deg) scaleY(0);transform:rotate(45deg) scaleY(0);width:4px;transition:transform .15s cubic-bezier(.71,-.46,.88,.6) .05s;-ms-transform-origin:center;transform-origin:center}.el-checkbox__original{opacity:0;outline:0;position:absolute;margin:0;left:-999px}.el-checkbox__label{font-size:14px;padding-left:5px} -------------------------------------------------------------------------------- /src/styles/widget/weui-picker/weui-picker.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | @pickerItemHeight: 34px; 4 | .weui-picker { 5 | position: fixed; 6 | width: 100%; 7 | left: 0; 8 | bottom: 0; 9 | z-index: 5000; 10 | backface-visibility: hidden; 11 | transform: translate(0, 100%); 12 | //slide up animation 13 | transition: transform .3s; 14 | } 15 | 16 | .weui-picker__hd { 17 | display: flex; 18 | padding: 9px 15px; 19 | background-color: #fff; 20 | position: relative; 21 | text-align: center; 22 | font-size: 17px; 23 | &:after { 24 | .setBottomLine(@weuiLineColorLight); 25 | } 26 | } 27 | 28 | .weui-picker__action { 29 | display: block; 30 | flex: 1; 31 | color: @weuiColorPrimary; 32 | 33 | &:first-child { 34 | text-align: left; 35 | color: #888; 36 | } 37 | &:last-child { 38 | text-align: right; 39 | } 40 | } 41 | 42 | .weui-picker__bd { 43 | display: flex; 44 | position: relative; 45 | background-color: #fff; 46 | height: 238px; 47 | overflow: hidden; 48 | } 49 | 50 | .weui-picker__group { 51 | flex: 1; 52 | position: relative; 53 | height: 100%; 54 | //-webkit-mask-box-image: -webkit-linear-gradient(bottom,transparent,transparent 5%,#fff 50%,#fff 50%,transparent 95%,transparent); 55 | } 56 | 57 | .weui-picker__mask { 58 | position: absolute; 59 | top: 0; 60 | left: 0; 61 | width: 100%; 62 | height: 100%; 63 | margin: 0 auto; 64 | z-index: 3; 65 | background: linear-gradient(180deg, hsla(0, 0%, 100%, .95), hsla(0, 0%, 100%, .6)), linear-gradient(0deg, hsla(0, 0%, 100%, .95), hsla(0, 0%, 100%, .6)); 66 | background-position: top, bottom; 67 | background-size: 100% 102px; 68 | background-repeat: no-repeat; 69 | transform: translateZ(0); 70 | } 71 | 72 | .weui-picker__indicator { 73 | width: 100%; 74 | height: @pickerItemHeight; 75 | position: absolute; 76 | left: 0; 77 | top: 102px; 78 | z-index: 3; 79 | &:before { 80 | .setTopLine(@weuiLineColorLight); 81 | } 82 | &:after { 83 | .setBottomLine(@weuiLineColorLight); 84 | } 85 | } 86 | 87 | .weui-picker__content { 88 | position: absolute; 89 | top: 0; 90 | left: 0; 91 | width: 100%; 92 | } 93 | 94 | .weui-picker__item { 95 | padding: 0; 96 | height: @pickerItemHeight; 97 | line-height: @pickerItemHeight; 98 | text-align: center; 99 | color: #000; 100 | text-overflow: ellipsis; 101 | white-space: nowrap; 102 | overflow: hidden; 103 | } 104 | 105 | .weui-picker__item_disabled { 106 | color: @weuiTextColorGray; 107 | } -------------------------------------------------------------------------------- /src/styles/widget/weui-cell/weui-uploader.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-uploader{} 4 | .weui-uploader__hd{ 5 | display: flex; 6 | padding-bottom: @weuiCellGapV; 7 | align-items: center; 8 | } 9 | .weui-uploader__title{ 10 | flex: 1; 11 | } 12 | .weui-uploader__info{ 13 | color: @weuiTextColorTips; 14 | } 15 | 16 | .weui-uploader__bd{ 17 | margin-bottom: @weuiCellGapH - (@weuiCellGapV + @weuiUploaderFileSpacing); 18 | margin-right: -@weuiUploaderFileSpacing; 19 | overflow: hidden; 20 | } 21 | .weui-uploader__files{ 22 | list-style: none; 23 | } 24 | .weui-uploader__file{ 25 | float: left; 26 | margin-right: @weuiUploaderFileSpacing; 27 | margin-bottom: @weuiUploaderFileSpacing; 28 | width: @weuiUploaderSize; 29 | height: @weuiUploaderSize; 30 | background: no-repeat center center; 31 | background-size: cover; 32 | } 33 | .weui-uploader__file_status{ 34 | position: relative; 35 | &:before{ 36 | content: " "; 37 | position: absolute; 38 | top: 0; 39 | right: 0; 40 | bottom: 0; 41 | left: 0; 42 | background-color: rgba(0, 0, 0, .5); 43 | } 44 | .weui-uploader__file-content{ 45 | display: block; 46 | } 47 | } 48 | .weui-uploader__file-content{ 49 | display: none; 50 | position: absolute; 51 | top: 50%; 52 | left: 50%; 53 | transform: translate(-50%, -50%); 54 | color: #FFFFFF; 55 | .weui-icon-warn{ 56 | display: inline-block; 57 | } 58 | } 59 | .weui-uploader__input-box{ 60 | float:left; 61 | position: relative; 62 | margin-right: @weuiUploaderFileSpacing; 63 | margin-bottom: @weuiUploaderFileSpacing; 64 | width: @weuiUploaderSize - @weuiUploaderBorderWidth * 2; 65 | height: @weuiUploaderSize - @weuiUploaderBorderWidth * 2; 66 | border: @weuiUploaderBorderWidth solid @weuiUploaderBorderColor; 67 | &:before, &:after{ 68 | content: " "; 69 | position: absolute; 70 | top: 50%; 71 | left: 50%; 72 | transform: translate(-50%, -50%); 73 | background-color: @weuiUploaderBorderColor; 74 | } 75 | &:before{ 76 | width: @weuiUploaderBorderWidth + 1; 77 | height: @weuiUploaderSize / 2; 78 | } 79 | &:after{ 80 | width: @weuiUploaderSize / 2; 81 | height: @weuiUploaderBorderWidth + 1; 82 | } 83 | &:active{ 84 | border-color: @weuiUploaderActiveBorderColor; 85 | &:before, &:after{ 86 | background-color: @weuiUploaderActiveBorderColor; 87 | } 88 | } 89 | } 90 | .weui-uploader__input{ 91 | position: absolute; 92 | z-index: 1; 93 | top: 0; 94 | left: 0; 95 | width: 100%; 96 | height: 100%; 97 | opacity: 0; 98 | .setTapColor(); 99 | } -------------------------------------------------------------------------------- /src/modules/index/views/nav1/Form.vue: -------------------------------------------------------------------------------- 1 | 52 | 53 | -------------------------------------------------------------------------------- /src/modules/phone/phone/UploadInfo.vue: -------------------------------------------------------------------------------- 1 | 2 | 27 | 28 | -------------------------------------------------------------------------------- /src/styles/widget/weui-tips/weui-actionsheet.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | @weuiActionSheetAndroidBorderRadius: 2px; 3 | 4 | .weui-actionsheet { 5 | position: fixed; 6 | left: 0; 7 | bottom: 0; 8 | transform: translate(0, 100%); 9 | backface-visibility: hidden; 10 | z-index: 5000; 11 | width: 100%; 12 | background-color: @weuiBgColorDefault; 13 | //slide up animation 14 | transition: transform .3s; 15 | } 16 | .weui-actionsheet__title { 17 | position: relative; 18 | height: 65px; 19 | padding: 0 20px; 20 | line-height: 1.4; 21 | display: flex; 22 | justify-content: center; 23 | flex-direction: column; 24 | text-align: center; 25 | font-size: 14px; 26 | color: #888; 27 | background: #FCFCFD; 28 | &:before { 29 | .setBottomLine(@weuiCellBorderColor); 30 | } 31 | .weui-actionsheet__title-text { 32 | .ellipsisLn(2); 33 | } 34 | } 35 | .weui-actionsheet__menu{ 36 | background-color: #FCFCFD; 37 | } 38 | .weui-actionsheet__action { 39 | margin-top: 6px; 40 | background-color: #FCFCFD;; 41 | } 42 | .weui-actionsheet__cell { 43 | position: relative; 44 | padding: 10px 0; 45 | text-align: center; 46 | font-size: 18px; 47 | &:before { 48 | .setTopLine(@weuiCellBorderColor); 49 | } 50 | &:active{ 51 | background-color: @weuiBgColorActive; 52 | } 53 | &:first-child{ 54 | &:before{ 55 | display: none; 56 | } 57 | } 58 | } 59 | 60 | 61 | //android actionSheet 62 | .weui-skin_android{ 63 | .weui-actionsheet { 64 | position: fixed; 65 | left: 50%; 66 | top: 50%; 67 | bottom: auto; 68 | transform: translate(-50%, -50%); 69 | //padding: 0 40px; 70 | width: 274px; 71 | box-sizing: border-box; 72 | backface-visibility: hidden; 73 | background: transparent; 74 | //slide up animation 75 | transition: transform .3s; 76 | } 77 | .weui-actionsheet__action{ 78 | display: none; 79 | } 80 | .weui-actionsheet__menu { 81 | border-radius: @weuiActionSheetAndroidBorderRadius; 82 | box-shadow: 0 6px 30px 0 rgba(0,0,0,.1); 83 | } 84 | .weui-actionsheet__cell { 85 | padding: 13px 24px; 86 | font-size: 16px; 87 | line-height: 1.4; 88 | text-align: left; 89 | &:first-child { 90 | border-top-left-radius: @weuiActionSheetAndroidBorderRadius; 91 | border-top-right-radius: @weuiActionSheetAndroidBorderRadius; 92 | } 93 | &:last-child { 94 | border-bottom-left-radius: @weuiActionSheetAndroidBorderRadius; 95 | border-bottom-right-radius: @weuiActionSheetAndroidBorderRadius; 96 | } 97 | } 98 | } 99 | 100 | //actionSheet aniamtion 101 | .weui-actionsheet_toggle{ 102 | transform: translate(0, 0); 103 | } -------------------------------------------------------------------------------- /src/styles/widget/weui-searchbar/weui-searchbar.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | .weui-search-bar { 3 | position: relative; 4 | padding: 8px 10px; 5 | display: flex; 6 | box-sizing: border-box; 7 | background-color: #EFEFF4; 8 | &:before { 9 | .setTopLine(#D7D6DC); 10 | } 11 | &:after { 12 | .setBottomLine(#D7D6DC); 13 | } 14 | &.weui-search-bar_focusing{ 15 | .weui-search-bar__cancel-btn{ 16 | display: block; 17 | } 18 | .weui-search-bar__label{ 19 | display: none; 20 | } 21 | } 22 | } 23 | .weui-search-bar__form { 24 | position: relative; 25 | flex: auto; 26 | background-color: #EFEFF4; 27 | &:after{ 28 | content: ''; 29 | position: absolute; 30 | left: 0; 31 | top:0; 32 | width: 200%; 33 | height: 200%; 34 | transform: scale(.5); 35 | transform-origin: 0 0; 36 | border-radius: 10px; 37 | border: 1px solid #E6E6EA; 38 | box-sizing: border-box; 39 | background: #FFFFFF; 40 | } 41 | } 42 | .weui-search-bar__box { 43 | position: relative; 44 | padding-left: 30px; 45 | padding-right: 30px; 46 | height: 100%; 47 | width: 100%; 48 | box-sizing: border-box; 49 | z-index: 1; 50 | .weui-search-bar__input { 51 | padding: 4px 0; 52 | width: 100%; 53 | height: 20/14em; 54 | border: 0; 55 | font-size: 14px; 56 | line-height: 20/14em; 57 | box-sizing: content-box; 58 | background: transparent; 59 | &:focus { 60 | outline: none; 61 | } 62 | } 63 | .weui-icon-search { 64 | position: absolute; 65 | left: 10px; 66 | top: 0; 67 | line-height: 28px; 68 | } 69 | .weui-icon-clear { 70 | position: absolute; 71 | top: 0; 72 | right: 0; 73 | padding: 0 10px; 74 | line-height: 28px; 75 | } 76 | } 77 | .weui-search-bar__label { 78 | position: absolute; 79 | top: 1px; 80 | right: 1px; 81 | bottom: 1px; 82 | left: 1px; 83 | z-index: 2; 84 | border-radius: 3px; 85 | text-align: center; 86 | color: #9B9B9B; 87 | background: #FFFFFF; 88 | span { 89 | display: inline-block; 90 | font-size: 14px; 91 | vertical-align: middle; 92 | } 93 | .weui-icon-search { 94 | margin-right: 5px; 95 | } 96 | } 97 | .weui-search-bar__cancel-btn { 98 | display: none; 99 | margin-left: 10px; 100 | line-height: 28px; 101 | color: #09BB07; 102 | white-space: nowrap; 103 | } 104 | .weui-search-bar__input:not(:valid) ~ .weui-icon-clear { 105 | display: none; 106 | } 107 | 108 | //干掉input[search]默认的clear button 109 | input[type="search"]::-webkit-search-decoration, 110 | input[type="search"]::-webkit-search-cancel-button, 111 | input[type="search"]::-webkit-search-results-button, 112 | input[type="search"]::-webkit-search-results-decoration { 113 | display: none; 114 | } -------------------------------------------------------------------------------- /src/assets/theme/theme-green/reset.css: -------------------------------------------------------------------------------- 1 | progress,sub,sup{vertical-align:baseline}button,hr,input{overflow:visible}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}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;color:#18c79c;text-decoration:none}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;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}hr{box-sizing:content-box;height:0}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:ButtonText dotted 1px}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","微软雅黑",Arial,sans-serif;font-weight:400;font-size:14px;color:rgb(31, 61, 57)}a:focus,a:hover{color:rgb(70, 210, 176)}a:active{color:rgb(22, 179, 140)}h1,h2,h3,h4,h5,h6{color:rgb(31, 61, 57);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} -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/reset.css: -------------------------------------------------------------------------------- 1 | progress,sub,sup{vertical-align:baseline}button,hr,input{overflow:visible}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}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;color:#1d8ce0;text-decoration:none}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;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}hr{box-sizing:content-box;height:0}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:ButtonText dotted 1px}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","微软雅黑",Arial,sans-serif;font-weight:400;font-size:14px;color:rgb(31, 45, 61)}a:focus,a:hover{color:rgb(74, 163, 230)}a:active{color:rgb(26, 126, 202)}h1,h2,h3,h4,h5,h6{color:rgb(31, 45, 61);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} -------------------------------------------------------------------------------- /src/styles/widget/weui-tips/weui-dialog.less: -------------------------------------------------------------------------------- 1 | @import "../../base/fn"; 2 | 3 | .weui-dialog { 4 | position: fixed; 5 | z-index: 5000; 6 | width: 80%; 7 | max-width: 300px; 8 | top: 50%; 9 | left: 50%; 10 | transform: translate(-50%, -50%); 11 | 12 | background-color: @weuiDialogBackgroundColor; 13 | text-align: center; 14 | border-radius: 3px; 15 | overflow: hidden; 16 | } 17 | .weui-dialog__hd { 18 | padding: 1.3em @weuiDialogGapWidth .5em; 19 | } 20 | .weui-dialog__title { 21 | font-weight: 400; 22 | font-size: 18px; 23 | } 24 | .weui-dialog__bd { 25 | padding: 0 @weuiDialogGapWidth .8em; 26 | min-height: 40px; 27 | font-size: 15px; 28 | line-height: 1.3; 29 | word-wrap: break-word; 30 | word-break: break-all; 31 | color: @weuiTextColorGray; 32 | &:first-child{ 33 | padding:2.7em 20px 1.7em; 34 | color:#353535; 35 | } 36 | } 37 | .weui-dialog__ft { 38 | position: relative; 39 | line-height: 48px; 40 | font-size: 18px; 41 | display: flex; 42 | &:after { 43 | content: " "; 44 | .setTopLine(@weuiDialogLineColor); 45 | } 46 | } 47 | .weui-dialog__btn { 48 | display: block; 49 | flex: 1; 50 | color: @weuiDialogLinkColor; 51 | text-decoration: none; 52 | .setTapColor(); 53 | &:active { 54 | background-color: @weuiDialogLinkActiveBc; 55 | } 56 | 57 | position: relative; 58 | &:after { 59 | content: " "; 60 | .setLeftLine(@weuiDialogLineColor); 61 | } 62 | &:first-child { 63 | &:after { 64 | display: none; 65 | } 66 | } 67 | } 68 | .weui-dialog__btn_default { 69 | color: #353535; 70 | } 71 | .weui-dialog__btn_primary { 72 | color: #0BB20C; 73 | } 74 | 75 | .weui-skin_android{ 76 | .weui-dialog { 77 | text-align: left; 78 | box-shadow: 0 6px 30px 0 rgba(0, 0, 0, .1); 79 | } 80 | .weui-dialog__title{ 81 | font-size: 21px; 82 | } 83 | .weui-dialog__hd{ 84 | text-align: left; 85 | } 86 | .weui-dialog__bd{ 87 | color:@weuiTextColorGray; 88 | padding:.25em @weuiDialogGapWidth 2em; 89 | font-size: 17px; 90 | text-align: left; 91 | &:first-child{ 92 | padding:1.6em @weuiDialogGapWidth 2em; 93 | color:#353535; 94 | } 95 | } 96 | .weui-dialog__ft{ 97 | display: block; 98 | text-align: right; 99 | line-height: 42px; 100 | font-size: 16px; 101 | padding:0 @weuiDialogGapWidth .7em; 102 | &:after{ 103 | display: none; 104 | } 105 | } 106 | .weui-dialog__btn{ 107 | display: inline-block; 108 | vertical-align: top; 109 | padding:0 .8em; 110 | &:after{ 111 | display: none; 112 | } 113 | 114 | &:active{ 115 | background-color: rgba(0,0,0,.06); 116 | } 117 | &:visited{ 118 | background-color: rgba(0,0,0,.06); 119 | } 120 | &:last-child{ 121 | margin-right: -.8em; 122 | } 123 | } 124 | .weui-dialog__btn_default { 125 | color: #808080; 126 | } 127 | } 128 | 129 | @media screen and (min-width: 1024px) { 130 | .weui-dialog { 131 | width: 35%; 132 | } 133 | } 134 | -------------------------------------------------------------------------------- /src/route/routes.js: -------------------------------------------------------------------------------- 1 | import Login from '../modules/index/views/Login.vue' 2 | import NotFound from '../modules/index/views/404.vue' 3 | import Home from '../modules/index/views/Home.vue' 4 | import Table from '../modules/index/views/nav1/Table.vue' 5 | import Info from '../modules/index/views/nav1/Info.vue' 6 | import Form from '../modules/index/views/nav1/Form.vue' 7 | import User from '../modules/index/views/nav1/user.vue' 8 | import Page4 from '../modules/index/views/nav2/Page4.vue' 9 | import TelManage from '../modules/index/views/nav2/TelManage.vue' 10 | import Page5 from '../modules/index/views/nav2/Page5.vue' 11 | import Page6 from '../modules/index/views/nav3/Page6.vue' 12 | import echarts from '../modules/index/views/charts/echarts.vue' 13 | import UploadInfo from '../modules/phone/phone/UploadInfo.vue' 14 | import Grid from '../modules/phone/phone/Grid.vue' 15 | import Timeline from '../modules/phone/phone/timeline.vue' 16 | import Map from '../modules/phone/phone/map.vue' 17 | import List from '../modules/phone/phone/list.vue' 18 | import Element from '../modules/phone/phone/element.vue' 19 | import Telephone from '../modules/phone/phone/telephone.vue' 20 | 21 | import Vue from 'vue' 22 | import VueRouter from 'vue-router' 23 | 24 | Vue.use(VueRouter) 25 | 26 | const routers = new VueRouter({ 27 | // mode: 'history', 28 | routes:[ 29 | { 30 | path: '/login', 31 | component: Login, 32 | name: '', 33 | hidden: true 34 | }, 35 | /*{ 36 | path: '/', 37 | redirect: '/table', 38 | hidden: true 39 | },*/ 40 | { 41 | path: '/404', 42 | component: NotFound, 43 | name: '', 44 | hidden: true 45 | }, 46 | { 47 | path: '/', 48 | component: Home, 49 | name: '投诉管理', 50 | iconCls: 'el-icon-message',//图标样式class 51 | children: [ 52 | { path: '/table', component: Table, name: 'Table' }, 53 | { path: '/info', component: Info, name: 'Info列表' }, 54 | { path: '/form', component: Form, name: 'Form' }, 55 | ] 56 | }, 57 | { 58 | path: '/', 59 | component: Home, 60 | name: '后台编辑', 61 | iconCls: 'fa fa-id-card-o', 62 | children: [ 63 | { path: '/page4', component: TelManage, name: '联系我们' }, 64 | { path: '/page5', component: Page5, name: '公园广场' }, 65 | { path: '/page5', component: Page4, name: '公厕' } 66 | ] 67 | }, 68 | { 69 | path: '/', 70 | component: Home, 71 | name: '', 72 | iconCls: 'fa fa-address-card', 73 | leaf: true,//只有一个节点 74 | children: [ 75 | { path: '/user', component: User, name: '用户管理' } 76 | ] 77 | }, 78 | { 79 | path: '/', 80 | component: Home, 81 | name: '订阅号管理', 82 | iconCls: 'fa fa-bar-chart', 83 | children: [ 84 | { path: '/echarts', component: echarts, name: '微矩阵管理' } 85 | ] 86 | }, 87 | { 88 | path: '/', 89 | component: Home, 90 | name: 'Charts1', 91 | iconCls: 'fa fa-bar-chart', 92 | children: [ 93 | { path: '/echarts', component: echarts, name: 'echarts' }, 94 | { path: '/echarts2', component: echarts, name: 'echarts2' } 95 | ] 96 | } 97 | ] 98 | }) 99 | 100 | export default routers; -------------------------------------------------------------------------------- /src/assets/theme/theme-green/radio.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-radio-button__inner,.el-radio__input{line-height:1;vertical-align:middle;outline:0}.el-radio,.el-radio__inner,.el-radio__input{position:relative;display:inline-block}.el-radio,.el-radio-button__inner{white-space:nowrap;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.el-radio{color:rgb(31, 61, 57);cursor:pointer}.el-radio+.el-radio{margin-left:15px}.el-radio__input{white-space:nowrap;cursor:pointer}.el-radio__input.is-focus .el-radio__inner{border-color:#18c79c}.el-radio__input.is-checked .el-radio__inner{border-color:#18c79c;background:#18c79c}.el-radio__input.is-checked .el-radio__inner::after{-ms-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1)}.el-radio__input.is-disabled .el-radio__inner{background-color:rgb(238, 246, 246);border-color:rgb(209, 229, 227);cursor:not-allowed}.el-radio__input.is-disabled .el-radio__inner::after{cursor:not-allowed;background-color:rgb(238, 246, 246)}.el-radio__input.is-disabled .el-radio__inner+.el-radio__label{cursor:not-allowed}.el-radio__input.is-disabled.is-checked .el-radio__inner{background-color:rgb(209, 229, 227);border-color:rgb(209, 229, 227)}.el-radio__inner,.el-radio__input.is-disabled.is-checked .el-radio__inner::after{background-color:#fff}.el-radio__input.is-disabled+.el-radio__label{color:#bbb;cursor:not-allowed}.el-radio__inner{border:1px solid rgb(191, 217, 214);width:18px;height:18px;border-radius:50%;cursor:pointer;box-sizing:border-box}.el-radio__inner:hover{border-color:#18c79c}.el-radio__inner::after{width:6px;height:6px;border-radius:50%;background-color:#fff;content:"";position:absolute;left:50%;top:50%;-ms-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);transition:transform .15s cubic-bezier(.71,-.46,.88,.6)}.el-radio__original{opacity:0;outline:0;position:absolute;z-index:-1;top:0;left:0;right:0;bottom:0;margin:0}.el-radio-button,.el-radio-button__inner{display:inline-block;position:relative}.el-radio__label{font-size:14px;padding-left:5px}.el-radio-group{display:inline-block;font-size:0;line-height:1}.el-radio-group .el-radio{font-size:14px}.el-radio-button:first-child .el-radio-button__inner{border-left:1px solid rgb(191, 217, 214);border-radius:4px 0 0 4px;box-shadow:none!important}.el-radio-button:last-child .el-radio-button__inner{border-radius:0 4px 4px 0}.el-radio-button__inner{background:#fff;border:1px solid rgb(191, 217, 214);border-left:0;color:rgb(31, 61, 57);-webkit-appearance:none;text-align:center;box-sizing:border-box;margin:0;cursor:pointer;transition:all .3s cubic-bezier(.645,.045,.355,1);padding:10px 15px;font-size:14px;border-radius:0}.el-radio-button__inner:hover{color:#18c79c}.el-radio-button__inner [class*=el-icon-]{line-height:.9}.el-radio-button__inner [class*=el-icon-]+span{margin-left:5px}.el-radio-button__orig-radio{opacity:0;outline:0;position:absolute;z-index:-1;left:-999px}.el-radio-button__orig-radio:checked+.el-radio-button__inner{color:#fff;background-color:#18c79c;border-color:#18c79c;box-shadow:-1px 0 0 0 #18c79c}.el-radio-button__orig-radio:disabled+.el-radio-button__inner{color:rgb(191, 217, 214);cursor:not-allowed;background-image:none;background-color:rgb(238, 246, 246);border-color:rgb(209, 229, 227)}.el-radio-button--large .el-radio-button__inner{padding:11px 19px;font-size:16px;border-radius:0}.el-radio-button--small .el-radio-button__inner{padding:7px 9px;font-size:12px;border-radius:0}.el-radio-button--mini .el-radio-button__inner{padding:4px;font-size:12px;border-radius:0} -------------------------------------------------------------------------------- /src/styles/main.css: -------------------------------------------------------------------------------- 1 | body, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, 2 | pre, fieldset, lengend, button, input, textarea, th, td { 3 | margin: 0; 4 | padding: 0; 5 | } 6 | 7 | html { 8 | -webkit-text-size-adjust: 100%; 9 | width:100%; 10 | height: 100%; 11 | } 12 | 13 | * { 14 | padding: 0; 15 | margin: 0; 16 | -webkit-tap-highlight-color: rgba(0, 0, 0, 0); 17 | } 18 | 19 | body { 20 | font: 16px/1 Helvetica, "Microsoft YaHei", Arial, Helvetica, sans-serif; 21 | height: 100%; 22 | background: #FBFBFB; 23 | overflow: hidden; 24 | } 25 | 26 | ul, li, dt, dd, dl { 27 | list-style: none; 28 | } 29 | 30 | a { 31 | text-decoration: none; 32 | } 33 | 34 | a:hover { 35 | text-decoration: none; 36 | } 37 | 38 | a:active { 39 | text-decoration: none; 40 | } 41 | 42 | a:visited { 43 | text-decoration: none; 44 | /* border: 0px; */ 45 | } 46 | 47 | button { 48 | border: 0; 49 | } 50 | 51 | input[type="button"] { 52 | border: 0; 53 | } 54 | 55 | .clearfix:after { 56 | clear: both; 57 | content: ""; 58 | display: table; 59 | height: 0; 60 | visibility: hidden; 61 | } 62 | 63 | .clearfix { 64 | display: block; 65 | *zoom: 1; 66 | } 67 | 68 | #content{ 69 | min-height: 80%; 70 | } 71 | .head { 72 | width: 100%; 73 | height: 200px; 74 | margin: 0 auto; 75 | } 76 | .head_2 { 77 | background: url(images/grid.jpg) no-repeat center center #197ec2; 78 | background-size: 100% 100%; 79 | } 80 | .head_martix { 81 | background: url(images/matrix.jpg) no-repeat center center #197ec2; 82 | background-size: 100% 100%; 83 | } 84 | .head_list { 85 | background: url(images/guide.png) no-repeat center center #197ec2; 86 | background-size: 100% 100%; 87 | } 88 | .head_case{ 89 | background-image: url(images/case2.jpg) ; 90 | background-size: 100% 100%; 91 | } 92 | .head_contactUS { 93 | background-image: url(images/contact.jpg) ; 94 | background-size: 100% 100%; 95 | } 96 | .head_list h2{ 97 | text-align: center; 98 | color: #fff; 99 | } 100 | 101 | .icon_top{ 102 | margin-top:25px; 103 | } 104 | .iconMatr_top{ 105 | margin-top:15px; 106 | } 107 | .icon span{ 108 | color: #939393; 109 | line-height: 1.5; 110 | } 111 | .icon_blue{ 112 | color: #2297E4; 113 | } 114 | .icon_organ{ 115 | color: #F0AD4E; 116 | } 117 | .icon_green { 118 | color: #5CB85C; 119 | } 120 | .icon_yellow{ 121 | color: #ECDA14; 122 | } 123 | .icon_red{ 124 | color: #D9534F; 125 | } 126 | .icon_primary{ 127 | color: #337AB7; 128 | } 129 | .icon_purple{ 130 | color: #936DD1; 131 | } 132 | .icon { 133 | display: inline-block; 134 | height: 96px; 135 | width:33%; 136 | position: relative; 137 | text-align:center; 138 | vertical-align: middle; 139 | float:left; 140 | } 141 | .nr img{ 142 | height:28px; 143 | width:28px; 144 | } 145 | .nr .iconMatr { 146 | height:8%; 147 | border: none; 148 | } 149 | .nr .icon_f{ 150 | -webkit-filter: grayscale(100%); 151 | -moz-filter: grayscale(100%); 152 | -ms-filter: grayscale(100%); 153 | -o-filter: grayscale(100%); 154 | filter: grayscale(100%); 155 | filter: gray; 156 | } 157 | .nr .no_open { 158 | width: 45px; 159 | height: 45px; 160 | background: url(images/no_open.png) no-repeat center center; 161 | background-size: 45px 45px; 162 | position: absolute; 163 | top: 0; 164 | right: 0; 165 | } 166 | 167 | .list-group-item{ 168 | padding: 15px 15px; 169 | } 170 | 171 | -------------------------------------------------------------------------------- /src/assets/theme/theme-darkblue/radio.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.el-radio-button__inner,.el-radio__input{line-height:1;vertical-align:middle;outline:0}.el-radio,.el-radio__inner,.el-radio__input{position:relative;display:inline-block}.el-radio,.el-radio-button__inner{white-space:nowrap;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.el-radio{color:rgb(31, 45, 61);cursor:pointer}.el-radio+.el-radio{margin-left:15px}.el-radio__input{white-space:nowrap;cursor:pointer}.el-radio__input.is-focus .el-radio__inner{border-color:#1d8ce0}.el-radio__input.is-checked .el-radio__inner{border-color:#1d8ce0;background:#1d8ce0}.el-radio__input.is-checked .el-radio__inner::after{-ms-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1)}.el-radio__input.is-disabled .el-radio__inner{background-color:rgb(238, 241, 246);border-color:rgb(209, 219, 229);cursor:not-allowed}.el-radio__input.is-disabled .el-radio__inner::after{cursor:not-allowed;background-color:rgb(238, 241, 246)}.el-radio__input.is-disabled .el-radio__inner+.el-radio__label{cursor:not-allowed}.el-radio__input.is-disabled.is-checked .el-radio__inner{background-color:rgb(209, 219, 229);border-color:rgb(209, 219, 229)}.el-radio__inner,.el-radio__input.is-disabled.is-checked .el-radio__inner::after{background-color:#fff}.el-radio__input.is-disabled+.el-radio__label{color:#bbb;cursor:not-allowed}.el-radio__inner{border:1px solid rgb(191, 203, 217);width:18px;height:18px;border-radius:50%;cursor:pointer;box-sizing:border-box}.el-radio__inner:hover{border-color:#1d8ce0}.el-radio__inner::after{width:6px;height:6px;border-radius:50%;background-color:#fff;content:"";position:absolute;left:50%;top:50%;-ms-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);transition:transform .15s cubic-bezier(.71,-.46,.88,.6)}.el-radio__original{opacity:0;outline:0;position:absolute;z-index:-1;top:0;left:0;right:0;bottom:0;margin:0}.el-radio-button,.el-radio-button__inner{display:inline-block;position:relative}.el-radio__label{font-size:14px;padding-left:5px}.el-radio-group{display:inline-block;font-size:0;line-height:1}.el-radio-group .el-radio{font-size:14px}.el-radio-button:first-child .el-radio-button__inner{border-left:1px solid rgb(191, 203, 217);border-radius:4px 0 0 4px;box-shadow:none!important}.el-radio-button:last-child .el-radio-button__inner{border-radius:0 4px 4px 0}.el-radio-button__inner{background:#fff;border:1px solid rgb(191, 203, 217);border-left:0;color:rgb(31, 45, 61);-webkit-appearance:none;text-align:center;box-sizing:border-box;margin:0;cursor:pointer;transition:all .3s cubic-bezier(.645,.045,.355,1);padding:10px 15px;font-size:14px;border-radius:0}.el-radio-button__inner:hover{color:#1d8ce0}.el-radio-button__inner [class*=el-icon-]{line-height:.9}.el-radio-button__inner [class*=el-icon-]+span{margin-left:5px}.el-radio-button__orig-radio{opacity:0;outline:0;position:absolute;z-index:-1;left:-999px}.el-radio-button__orig-radio:checked+.el-radio-button__inner{color:#fff;background-color:#1d8ce0;border-color:#1d8ce0;box-shadow:-1px 0 0 0 #1d8ce0}.el-radio-button__orig-radio:disabled+.el-radio-button__inner{color:rgb(191, 203, 217);cursor:not-allowed;background-image:none;background-color:rgb(238, 241, 246);border-color:rgb(209, 219, 229)}.el-radio-button--large .el-radio-button__inner{padding:11px 19px;font-size:16px;border-radius:0}.el-radio-button--small .el-radio-button__inner{padding:7px 9px;font-size:12px;border-radius:0}.el-radio-button--mini .el-radio-button__inner{padding:4px;font-size:12px;border-radius:0} --------------------------------------------------------------------------------