create project
						commit
						20537f9be0
					
				@ -0,0 +1,18 @@
 | 
			
		||||
<script>
 | 
			
		||||
	export default {
 | 
			
		||||
		onLaunch: function() {
 | 
			
		||||
			console.log('App Launch')
 | 
			
		||||
		},
 | 
			
		||||
		onShow: function() {
 | 
			
		||||
			console.log('App Show')
 | 
			
		||||
		},
 | 
			
		||||
		onHide: function() {
 | 
			
		||||
			console.log('App Hide')
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style lang="scss">
 | 
			
		||||
	/*每个页面公共css */
 | 
			
		||||
	@import '@/uni_modules/uview-ui/index.scss'
 | 
			
		||||
</style>
 | 
			
		||||
@ -0,0 +1,22 @@
 | 
			
		||||
<template>
 | 
			
		||||
	<view>
 | 
			
		||||
		<text>设备控制</text>
 | 
			
		||||
	</view>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
	export default {
 | 
			
		||||
		data() {
 | 
			
		||||
			return {
 | 
			
		||||
				
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		methods: {
 | 
			
		||||
			
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style>
 | 
			
		||||
 | 
			
		||||
</style>
 | 
			
		||||
@ -0,0 +1,22 @@
 | 
			
		||||
<template>
 | 
			
		||||
	<view>
 | 
			
		||||
		<text>这是实时监测页面</text>
 | 
			
		||||
	</view>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
	export default {
 | 
			
		||||
		data() {
 | 
			
		||||
			return {
 | 
			
		||||
				
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		methods: {
 | 
			
		||||
			
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style>
 | 
			
		||||
 | 
			
		||||
</style>
 | 
			
		||||
@ -0,0 +1,6 @@
 | 
			
		||||
export default{
 | 
			
		||||
  mqttHost: 'ws://101.126.7.123:8083',
 | 
			
		||||
  userName:'taytest',
 | 
			
		||||
  psw:'txgy1929',
 | 
			
		||||
  clientId:'123@jk1bh0'
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,20 @@
 | 
			
		||||
<!DOCTYPE html>
 | 
			
		||||
<html lang="en">
 | 
			
		||||
  <head>
 | 
			
		||||
    <meta charset="UTF-8" />
 | 
			
		||||
    <script>
 | 
			
		||||
      var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') ||
 | 
			
		||||
        CSS.supports('top: constant(a)'))
 | 
			
		||||
      document.write(
 | 
			
		||||
        '<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' +
 | 
			
		||||
        (coverSupport ? ', viewport-fit=cover' : '') + '" />')
 | 
			
		||||
    </script>
 | 
			
		||||
    <title></title>
 | 
			
		||||
    <!--preload-links-->
 | 
			
		||||
    <!--app-context-->
 | 
			
		||||
  </head>
 | 
			
		||||
  <body>
 | 
			
		||||
    <div id="app"><!--app-html--></div>
 | 
			
		||||
    <script type="module" src="/main.js"></script>
 | 
			
		||||
  </body>
 | 
			
		||||
</html>
 | 
			
		||||
@ -0,0 +1,29 @@
 | 
			
		||||
import App from './App'
 | 
			
		||||
import mqttConfig from './config.js'
 | 
			
		||||
 | 
			
		||||
Vue.prototype.$config=mqttConfig
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
// #ifndef VUE3
 | 
			
		||||
import Vue from 'vue'
 | 
			
		||||
import uView from '@/uni_modules/uview-ui'
 | 
			
		||||
Vue.use(uView)
 | 
			
		||||
import './uni.promisify.adaptor'
 | 
			
		||||
 | 
			
		||||
Vue.config.productionTip = false
 | 
			
		||||
App.mpType = 'app'
 | 
			
		||||
const app = new Vue({
 | 
			
		||||
  ...App
 | 
			
		||||
})
 | 
			
		||||
app.$mount()
 | 
			
		||||
// #endif
 | 
			
		||||
 | 
			
		||||
// #ifdef VUE3
 | 
			
		||||
import { createSSRApp } from 'vue'
 | 
			
		||||
export function createApp() {
 | 
			
		||||
  const app = createSSRApp(App)
 | 
			
		||||
  return {
 | 
			
		||||
    app
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
// #endif
 | 
			
		||||
@ -0,0 +1,22 @@
 | 
			
		||||
<template>
 | 
			
		||||
	<view>
 | 
			
		||||
		<text>设备控制</text>
 | 
			
		||||
	</view>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
	export default {
 | 
			
		||||
		data() {
 | 
			
		||||
			return {
 | 
			
		||||
				
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		methods: {
 | 
			
		||||
			
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style>
 | 
			
		||||
 | 
			
		||||
</style>
 | 
			
		||||
@ -0,0 +1,22 @@
 | 
			
		||||
<template>
 | 
			
		||||
	<view>
 | 
			
		||||
		<text>编辑mqtt配置</text>
 | 
			
		||||
	</view>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
	export default {
 | 
			
		||||
		data() {
 | 
			
		||||
			return {
 | 
			
		||||
				
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		methods: {
 | 
			
		||||
			
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style>
 | 
			
		||||
 | 
			
		||||
</style>
 | 
			
		||||
@ -0,0 +1,130 @@
 | 
			
		||||
<template>
 | 
			
		||||
	<view class="content">		
 | 
			
		||||
		<view v-if="tabberPageLoadFlag[0]" :style="{display: currentIndex === 0 ? '' : 'none'}">
 | 
			
		||||
			<Realtime ref="realtime"></Realtime>
 | 
			
		||||
		</view>
 | 
			
		||||
		<view v-if="tabberPageLoadFlag[1]" :style="{display: currentIndex === 1 ? '' : 'none'}">
 | 
			
		||||
			<DeviceStatus ref="devicestatus"></DeviceStatus>
 | 
			
		||||
		</view>
 | 
			
		||||
		<view v-if="tabberPageLoadFlag[2]" :style="{display: currentIndex === 2 ? '' : 'none'}">
 | 
			
		||||
			<MyPage ref="mypage"></MyPage>
 | 
			
		||||
		</view>
 | 
			
		||||
		<u-tabbar v-model="currentIndex" @change="switchTabbar" :fixed="true" :placeholder="true"
 | 
			
		||||
			:safeAreaInsetBottom="true">
 | 
			
		||||
			<u-tabbar-item text="实时监测" icon="play-right"></u-tabbar-item>
 | 
			
		||||
			<u-tabbar-item text="设备状态" icon="grid"></u-tabbar-item>		
 | 
			
		||||
			<u-tabbar-item text="我的" icon="account"></u-tabbar-item>
 | 
			
		||||
		</u-tabbar>
 | 
			
		||||
	</view>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
	import Realtime from '../realtime/realtime.vue'
 | 
			
		||||
	import DeviceStatus from '../device-status/device-status.vue'
 | 
			
		||||
	import MyPage from '../my/my.vue'
 | 
			
		||||
	
 | 
			
		||||
	export default {
 | 
			
		||||
		components: {
 | 
			
		||||
			Realtime,
 | 
			
		||||
			DeviceStatus,
 | 
			
		||||
			MyPage
 | 
			
		||||
		},
 | 
			
		||||
		data() {
 | 
			
		||||
			return {
 | 
			
		||||
				value6: 0,				
 | 
			
		||||
				// tabbar当前被选中的序号
 | 
			
		||||
				currentIndex: 0,
 | 
			
		||||
				// 自定义底栏对应页面的加载情况
 | 
			
		||||
				tabberPageLoadFlag: [],
 | 
			
		||||
				// 底部tabbar菜单数据
 | 
			
		||||
				tabbarList: [{
 | 
			
		||||
						title: '元素',
 | 
			
		||||
						activeIcon: 'count-fill',
 | 
			
		||||
						inactiveIcon: 'menu'
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						title: '组件',
 | 
			
		||||
						activeIcon: 'honor-fill',
 | 
			
		||||
						inactiveIcon: 'honor'
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						title: '会员',
 | 
			
		||||
						activeIcon: 'vip-fill',
 | 
			
		||||
						inactiveIcon: 'vip',
 | 
			
		||||
						activeIconColor: '#FFFFFF',
 | 
			
		||||
						inactiveIconColor: '#FFFFFF',
 | 
			
		||||
						iconSize: 50,
 | 
			
		||||
						out: true
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						title: '发现',
 | 
			
		||||
						activeIcon: 'discover-fill',
 | 
			
		||||
						inactiveIcon: 'discover',
 | 
			
		||||
						count: 100
 | 
			
		||||
					},
 | 
			
		||||
					{
 | 
			
		||||
						title: '图鸟',
 | 
			
		||||
						activeIcon: 'computer-fill',
 | 
			
		||||
						inactiveIcon: 'computer',
 | 
			
		||||
						dot: true
 | 
			
		||||
					}
 | 
			
		||||
				]
 | 
			
		||||
			}
 | 
			
		||||
		},		
 | 
			
		||||
		onLoad(options) {
 | 
			
		||||
			const index = Number(options.index || 0)
 | 
			
		||||
			// 根据底部tabbar菜单列表设置对应页面的加载情况
 | 
			
		||||
			this.tabberPageLoadFlag = this.tabbarList.map((item, tabbar_index) => {
 | 
			
		||||
				return index === tabbar_index
 | 
			
		||||
			})
 | 
			
		||||
			this.switchTabbar(index)
 | 
			
		||||
		},
 | 
			
		||||
		methods: {			
 | 
			
		||||
			// 导航页面滚动到底部
 | 
			
		||||
			tabbarPageScrollLower(e) {},
 | 
			
		||||
			// 切换导航
 | 
			
		||||
			switchTabbar(index) {
 | 
			
		||||
				this._switchTabbarPage(index)
 | 
			
		||||
			},
 | 
			
		||||
			// 切换导航页面
 | 
			
		||||
			_switchTabbarPage(index) {
 | 
			
		||||
				const selectPageFlag = this.tabberPageLoadFlag[index]
 | 
			
		||||
				if (selectPageFlag === undefined) {
 | 
			
		||||
					return
 | 
			
		||||
				}
 | 
			
		||||
				if (selectPageFlag === false) {
 | 
			
		||||
					this.tabberPageLoadFlag[index] = true
 | 
			
		||||
				}
 | 
			
		||||
				this.currentIndex = index
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style>
 | 
			
		||||
	.content {
 | 
			
		||||
		display: flex;
 | 
			
		||||
		flex-direction: column;
 | 
			
		||||
		align-items: center;
 | 
			
		||||
		justify-content: center;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.logo {
 | 
			
		||||
		height: 200rpx;
 | 
			
		||||
		width: 200rpx;
 | 
			
		||||
		margin-top: 200rpx;
 | 
			
		||||
		margin-left: auto;
 | 
			
		||||
		margin-right: auto;
 | 
			
		||||
		margin-bottom: 50rpx;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.text-area {
 | 
			
		||||
		display: flex;
 | 
			
		||||
		justify-content: center;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.title {
 | 
			
		||||
		font-size: 36rpx;
 | 
			
		||||
		color: #8f8f94;
 | 
			
		||||
	}
 | 
			
		||||
</style>
 | 
			
		||||
@ -0,0 +1,22 @@
 | 
			
		||||
<template>
 | 
			
		||||
	<view>
 | 
			
		||||
		<text>我的</text>
 | 
			
		||||
	</view>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
	export default {
 | 
			
		||||
		data() {
 | 
			
		||||
			return {
 | 
			
		||||
				
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		methods: {
 | 
			
		||||
			
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style>
 | 
			
		||||
 | 
			
		||||
</style>
 | 
			
		||||
											
												Binary file not shown.
											
										
									
								| 
		 After Width: | Height: | Size: 3.9 KiB  | 
@ -0,0 +1,6 @@
 | 
			
		||||
{
 | 
			
		||||
  "host": "ws://101.126.7.123:8083",
 | 
			
		||||
  "userName":"taytest",
 | 
			
		||||
  "psw":"txgy1929",
 | 
			
		||||
  "clientId":"123@jk1bh0"
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,13 @@
 | 
			
		||||
uni.addInterceptor({
 | 
			
		||||
  returnValue (res) {
 | 
			
		||||
    if (!(!!res && (typeof res === "object" || typeof res === "function") && typeof res.then === "function")) {
 | 
			
		||||
      return res;
 | 
			
		||||
    }
 | 
			
		||||
    return new Promise((resolve, reject) => {
 | 
			
		||||
      res.then((res) => {
 | 
			
		||||
        if (!res) return resolve(res) 
 | 
			
		||||
        return res[0] ? reject(res[0]) : resolve(res[1])
 | 
			
		||||
      });
 | 
			
		||||
    });
 | 
			
		||||
  },
 | 
			
		||||
});
 | 
			
		||||
@ -0,0 +1,21 @@
 | 
			
		||||
MIT License
 | 
			
		||||
 | 
			
		||||
Copyright (c) 2023 www.uviewui.com
 | 
			
		||||
 | 
			
		||||
Permission is hereby granted, free of charge, to any person obtaining a copy
 | 
			
		||||
of this software and associated documentation files (the "Software"), to deal
 | 
			
		||||
in the Software without restriction, including without limitation the rights
 | 
			
		||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 | 
			
		||||
copies of the Software, and to permit persons to whom the Software is
 | 
			
		||||
furnished to do so, subject to the following conditions:
 | 
			
		||||
 | 
			
		||||
The above copyright notice and this permission notice shall be included in all
 | 
			
		||||
copies or substantial portions of the Software.
 | 
			
		||||
 | 
			
		||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 | 
			
		||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
			
		||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 | 
			
		||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 | 
			
		||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 | 
			
		||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 | 
			
		||||
SOFTWARE.
 | 
			
		||||
@ -0,0 +1,52 @@
 | 
			
		||||
export default {
 | 
			
		||||
    props: {
 | 
			
		||||
        // 头像图片组
 | 
			
		||||
        urls: {
 | 
			
		||||
            type: Array,
 | 
			
		||||
            default: uni.$u.props.avatarGroup.urls
 | 
			
		||||
        },
 | 
			
		||||
        // 最多展示的头像数量
 | 
			
		||||
        maxCount: {
 | 
			
		||||
            type: [String, Number],
 | 
			
		||||
            default: uni.$u.props.avatarGroup.maxCount
 | 
			
		||||
        },
 | 
			
		||||
        // 头像形状
 | 
			
		||||
        shape: {
 | 
			
		||||
            type: String,
 | 
			
		||||
            default: uni.$u.props.avatarGroup.shape
 | 
			
		||||
        },
 | 
			
		||||
        // 图片裁剪模式
 | 
			
		||||
        mode: {
 | 
			
		||||
            type: String,
 | 
			
		||||
            default: uni.$u.props.avatarGroup.mode
 | 
			
		||||
        },
 | 
			
		||||
        // 超出maxCount时是否显示查看更多的提示
 | 
			
		||||
        showMore: {
 | 
			
		||||
            type: Boolean,
 | 
			
		||||
            default: uni.$u.props.avatarGroup.showMore
 | 
			
		||||
        },
 | 
			
		||||
        // 头像大小
 | 
			
		||||
        size: {
 | 
			
		||||
            type: [String, Number],
 | 
			
		||||
            default: uni.$u.props.avatarGroup.size
 | 
			
		||||
        },
 | 
			
		||||
        // 指定从数组的对象元素中读取哪个属性作为图片地址
 | 
			
		||||
        keyName: {
 | 
			
		||||
            type: String,
 | 
			
		||||
            default: uni.$u.props.avatarGroup.keyName
 | 
			
		||||
        },
 | 
			
		||||
		// 头像之间的遮挡比例
 | 
			
		||||
        gap: {
 | 
			
		||||
            type: [String, Number],
 | 
			
		||||
            validator(value) {
 | 
			
		||||
                return value >= 0 && value <= 1
 | 
			
		||||
            },
 | 
			
		||||
            default: uni.$u.props.avatarGroup.gap
 | 
			
		||||
        },
 | 
			
		||||
		// 需额外显示的值
 | 
			
		||||
		extraValue: {
 | 
			
		||||
			type: [Number, String],
 | 
			
		||||
			default: uni.$u.props.avatarGroup.extraValue
 | 
			
		||||
		}
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,46 @@
 | 
			
		||||
$u-button-active-opacity:0.75 !default;
 | 
			
		||||
$u-button-loading-text-margin-left:4px !default;
 | 
			
		||||
$u-button-text-color: #FFFFFF !default;
 | 
			
		||||
$u-button-text-plain-error-color:$u-error !default;
 | 
			
		||||
$u-button-text-plain-warning-color:$u-warning !default;
 | 
			
		||||
$u-button-text-plain-success-color:$u-success !default;
 | 
			
		||||
$u-button-text-plain-info-color:$u-info !default;
 | 
			
		||||
$u-button-text-plain-primary-color:$u-primary !default;
 | 
			
		||||
.u-button {
 | 
			
		||||
	&--active {
 | 
			
		||||
		opacity: $u-button-active-opacity;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	&--active--plain {
 | 
			
		||||
		background-color: rgb(217, 217, 217);
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	&__loading-text {
 | 
			
		||||
		margin-left:$u-button-loading-text-margin-left;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	&__text,
 | 
			
		||||
	&__loading-text {
 | 
			
		||||
		color:$u-button-text-color;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	&__text--plain--error {
 | 
			
		||||
		color:$u-button-text-plain-error-color;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	&__text--plain--warning {
 | 
			
		||||
		color:$u-button-text-plain-warning-color;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	&__text--plain--success{
 | 
			
		||||
		color:$u-button-text-plain-success-color;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	&__text--plain--info {
 | 
			
		||||
		color:$u-button-text-plain-info-color;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	&__text--plain--primary {
 | 
			
		||||
		color:$u-button-text-plain-primary-color;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,80 @@
 | 
			
		||||
// nvue下hover-class无效
 | 
			
		||||
$u-button-before-top:50% !default;
 | 
			
		||||
$u-button-before-left:50% !default;
 | 
			
		||||
$u-button-before-width:100% !default;
 | 
			
		||||
$u-button-before-height:100% !default;
 | 
			
		||||
$u-button-before-transform:translate(-50%, -50%) !default;
 | 
			
		||||
$u-button-before-opacity:0 !default;
 | 
			
		||||
$u-button-before-background-color:#000 !default;
 | 
			
		||||
$u-button-before-border-color:#000 !default;
 | 
			
		||||
$u-button-active-before-opacity:.15 !default;
 | 
			
		||||
$u-button-icon-margin-left:4px !default;
 | 
			
		||||
$u-button-plain-u-button-info-color:$u-info;
 | 
			
		||||
$u-button-plain-u-button-success-color:$u-success;
 | 
			
		||||
$u-button-plain-u-button-error-color:$u-error;
 | 
			
		||||
$u-button-plain-u-button-warning-color:$u-error;
 | 
			
		||||
 | 
			
		||||
.u-button {
 | 
			
		||||
	width: 100%;
 | 
			
		||||
	
 | 
			
		||||
	&__text {
 | 
			
		||||
		white-space: nowrap;
 | 
			
		||||
		line-height: 1;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	&:before {
 | 
			
		||||
		position: absolute;
 | 
			
		||||
		top:$u-button-before-top;
 | 
			
		||||
		left:$u-button-before-left;
 | 
			
		||||
		width:$u-button-before-width;
 | 
			
		||||
		height:$u-button-before-height;
 | 
			
		||||
		border: inherit;
 | 
			
		||||
		border-radius: inherit;
 | 
			
		||||
		transform:$u-button-before-transform;
 | 
			
		||||
		opacity:$u-button-before-opacity;
 | 
			
		||||
		content: " ";
 | 
			
		||||
		background-color:$u-button-before-background-color;
 | 
			
		||||
		border-color:$u-button-before-border-color;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	&--active {
 | 
			
		||||
		&:before {
 | 
			
		||||
			opacity: .15
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	&__icon+&__text:not(:empty),
 | 
			
		||||
	&__loading-text {
 | 
			
		||||
		margin-left:$u-button-icon-margin-left;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	&--plain {
 | 
			
		||||
		&.u-button--primary {
 | 
			
		||||
			color: $u-primary;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	&--plain {
 | 
			
		||||
		&.u-button--info {
 | 
			
		||||
			color:$u-button-plain-u-button-info-color;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	&--plain {
 | 
			
		||||
		&.u-button--success {
 | 
			
		||||
			color:$u-button-plain-u-button-success-color;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	&--plain {
 | 
			
		||||
		&.u-button--error {
 | 
			
		||||
			color:$u-button-plain-u-button-error-color;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	&--plain {
 | 
			
		||||
		&.u-button--warning {
 | 
			
		||||
			color:$u-button-plain-u-button-warning-color;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,99 @@
 | 
			
		||||
<template>
 | 
			
		||||
	<view class="u-calendar-header u-border-bottom">
 | 
			
		||||
		<text
 | 
			
		||||
			class="u-calendar-header__title"
 | 
			
		||||
			v-if="showTitle"
 | 
			
		||||
		>{{ title }}</text>
 | 
			
		||||
		<text
 | 
			
		||||
			class="u-calendar-header__subtitle"
 | 
			
		||||
			v-if="showSubtitle"
 | 
			
		||||
		>{{ subtitle }}</text>
 | 
			
		||||
		<view class="u-calendar-header__weekdays">
 | 
			
		||||
			<text class="u-calendar-header__weekdays__weekday">一</text>
 | 
			
		||||
			<text class="u-calendar-header__weekdays__weekday">二</text>
 | 
			
		||||
			<text class="u-calendar-header__weekdays__weekday">三</text>
 | 
			
		||||
			<text class="u-calendar-header__weekdays__weekday">四</text>
 | 
			
		||||
			<text class="u-calendar-header__weekdays__weekday">五</text>
 | 
			
		||||
			<text class="u-calendar-header__weekdays__weekday">六</text>
 | 
			
		||||
			<text class="u-calendar-header__weekdays__weekday">日</text>
 | 
			
		||||
		</view>
 | 
			
		||||
	</view>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
	export default {
 | 
			
		||||
		name: 'u-calendar-header',
 | 
			
		||||
		mixins: [uni.$u.mpMixin, uni.$u.mixin],
 | 
			
		||||
		props: {
 | 
			
		||||
			// 标题
 | 
			
		||||
			title: {
 | 
			
		||||
				type: String,
 | 
			
		||||
				default: ''
 | 
			
		||||
			},
 | 
			
		||||
			// 副标题
 | 
			
		||||
			subtitle: {
 | 
			
		||||
				type: String,
 | 
			
		||||
				default: ''
 | 
			
		||||
			},
 | 
			
		||||
			// 是否显示标题
 | 
			
		||||
			showTitle: {
 | 
			
		||||
				type: Boolean,
 | 
			
		||||
				default: true
 | 
			
		||||
			},
 | 
			
		||||
			// 是否显示副标题
 | 
			
		||||
			showSubtitle: {
 | 
			
		||||
				type: Boolean,
 | 
			
		||||
				default: true
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		data() {
 | 
			
		||||
			return {
 | 
			
		||||
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		methods: {
 | 
			
		||||
			name() {
 | 
			
		||||
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style lang="scss" scoped>
 | 
			
		||||
	@import "../../libs/css/components.scss";
 | 
			
		||||
 | 
			
		||||
	.u-calendar-header {
 | 
			
		||||
		padding-bottom: 4px;
 | 
			
		||||
 | 
			
		||||
		&__title {
 | 
			
		||||
			font-size: 16px;
 | 
			
		||||
			color: $u-main-color;
 | 
			
		||||
			text-align: center;
 | 
			
		||||
			height: 42px;
 | 
			
		||||
			line-height: 42px;
 | 
			
		||||
			font-weight: bold;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&__subtitle {
 | 
			
		||||
			font-size: 14px;
 | 
			
		||||
			color: $u-main-color;
 | 
			
		||||
			height: 40px;
 | 
			
		||||
			text-align: center;
 | 
			
		||||
			line-height: 40px;
 | 
			
		||||
			font-weight: bold;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&__weekdays {
 | 
			
		||||
			@include flex;
 | 
			
		||||
			justify-content: space-between;
 | 
			
		||||
 | 
			
		||||
			&__weekday {
 | 
			
		||||
				font-size: 13px;
 | 
			
		||||
				color: $u-main-color;
 | 
			
		||||
				line-height: 30px;
 | 
			
		||||
				flex: 1;
 | 
			
		||||
				text-align: center;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
</style>
 | 
			
		||||
@ -0,0 +1,85 @@
 | 
			
		||||
export default {
 | 
			
		||||
    methods: {
 | 
			
		||||
        // 设置月份数据
 | 
			
		||||
        setMonth() {
 | 
			
		||||
            // 月初是周几
 | 
			
		||||
            const day = dayjs(this.date).date(1).day()
 | 
			
		||||
            const start = day == 0 ? 6 : day - 1
 | 
			
		||||
 | 
			
		||||
            // 本月天数
 | 
			
		||||
            const days = dayjs(this.date).endOf('month').format('D')
 | 
			
		||||
 | 
			
		||||
            // 上个月天数
 | 
			
		||||
            const prevDays = dayjs(this.date).endOf('month').subtract(1, 'month').format('D')
 | 
			
		||||
 | 
			
		||||
            // 日期数据
 | 
			
		||||
            const arr = []
 | 
			
		||||
            // 清空表格
 | 
			
		||||
            this.month = []
 | 
			
		||||
 | 
			
		||||
            // 添加上月数据
 | 
			
		||||
            arr.push(
 | 
			
		||||
                ...new Array(start).fill(1).map((e, i) => {
 | 
			
		||||
                    const day = prevDays - start + i + 1
 | 
			
		||||
 | 
			
		||||
                    return {
 | 
			
		||||
                        value: day,
 | 
			
		||||
                        disabled: true,
 | 
			
		||||
                        date: dayjs(this.date).subtract(1, 'month').date(day).format('YYYY-MM-DD')
 | 
			
		||||
                    }
 | 
			
		||||
                })
 | 
			
		||||
            )
 | 
			
		||||
 | 
			
		||||
            // 添加本月数据
 | 
			
		||||
            arr.push(
 | 
			
		||||
                ...new Array(days - 0).fill(1).map((e, i) => {
 | 
			
		||||
                    const day = i + 1
 | 
			
		||||
 | 
			
		||||
                    return {
 | 
			
		||||
                        value: day,
 | 
			
		||||
                        date: dayjs(this.date).date(day).format('YYYY-MM-DD')
 | 
			
		||||
                    }
 | 
			
		||||
                })
 | 
			
		||||
            )
 | 
			
		||||
 | 
			
		||||
            // 添加下个月
 | 
			
		||||
            arr.push(
 | 
			
		||||
                ...new Array(42 - days - start).fill(1).map((e, i) => {
 | 
			
		||||
                    const day = i + 1
 | 
			
		||||
 | 
			
		||||
                    return {
 | 
			
		||||
                        value: day,
 | 
			
		||||
                        disabled: true,
 | 
			
		||||
                        date: dayjs(this.date).add(1, 'month').date(day).format('YYYY-MM-DD')
 | 
			
		||||
                    }
 | 
			
		||||
                })
 | 
			
		||||
            )
 | 
			
		||||
 | 
			
		||||
            // 分割数组
 | 
			
		||||
            for (let n = 0; n < arr.length; n += 7) {
 | 
			
		||||
                this.month.push(
 | 
			
		||||
                    arr.slice(n, n + 7).map((e, i) => {
 | 
			
		||||
                        e.index = i + n
 | 
			
		||||
 | 
			
		||||
                        // 自定义信息
 | 
			
		||||
                        const custom = this.customList.find((c) => c.date == e.date)
 | 
			
		||||
 | 
			
		||||
                        // 农历
 | 
			
		||||
                        if (this.lunar) {
 | 
			
		||||
                            const {
 | 
			
		||||
                                IDayCn,
 | 
			
		||||
                                IMonthCn
 | 
			
		||||
                            } = this.getLunar(e.date)
 | 
			
		||||
                            e.lunar = IDayCn == '初一' ? IMonthCn : IDayCn
 | 
			
		||||
                        }
 | 
			
		||||
 | 
			
		||||
                        return {
 | 
			
		||||
                            ...e,
 | 
			
		||||
                            ...custom
 | 
			
		||||
                        }
 | 
			
		||||
                    })
 | 
			
		||||
                )
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,14 @@
 | 
			
		||||
export default {
 | 
			
		||||
    props: {
 | 
			
		||||
        // 是否打乱键盘按键的顺序
 | 
			
		||||
        random: {
 | 
			
		||||
            type: Boolean,
 | 
			
		||||
            default: false
 | 
			
		||||
        },
 | 
			
		||||
        // 输入一个中文后,是否自动切换到英文
 | 
			
		||||
        autoChange: {
 | 
			
		||||
            type: Boolean,
 | 
			
		||||
            default: false
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,14 @@
 | 
			
		||||
export default {
 | 
			
		||||
    props: {
 | 
			
		||||
        // 分组标题
 | 
			
		||||
        title: {
 | 
			
		||||
            type: String,
 | 
			
		||||
            default: uni.$u.props.cellGroup.title
 | 
			
		||||
        },
 | 
			
		||||
        // 是否显示外边框
 | 
			
		||||
        border: {
 | 
			
		||||
            type: Boolean,
 | 
			
		||||
            default: uni.$u.props.cellGroup.border
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,8 @@
 | 
			
		||||
export default {
 | 
			
		||||
    props: {
 | 
			
		||||
        percentage: {
 | 
			
		||||
            type: [String, Number],
 | 
			
		||||
            default: uni.$u.props.circleProgress.percentage
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,34 @@
 | 
			
		||||
export default {
 | 
			
		||||
    props: {
 | 
			
		||||
        // 倒计时总秒数
 | 
			
		||||
        seconds: {
 | 
			
		||||
            type: [String, Number],
 | 
			
		||||
            default: uni.$u.props.code.seconds
 | 
			
		||||
        },
 | 
			
		||||
        // 尚未开始时提示
 | 
			
		||||
        startText: {
 | 
			
		||||
            type: String,
 | 
			
		||||
            default: uni.$u.props.code.startText
 | 
			
		||||
        },
 | 
			
		||||
        // 正在倒计时中的提示
 | 
			
		||||
        changeText: {
 | 
			
		||||
            type: String,
 | 
			
		||||
            default: uni.$u.props.code.changeText
 | 
			
		||||
        },
 | 
			
		||||
        // 倒计时结束时的提示
 | 
			
		||||
        endText: {
 | 
			
		||||
            type: String,
 | 
			
		||||
            default: uni.$u.props.code.endText
 | 
			
		||||
        },
 | 
			
		||||
        // 是否在H5刷新或各端返回再进入时继续倒计时
 | 
			
		||||
        keepRunning: {
 | 
			
		||||
            type: Boolean,
 | 
			
		||||
            default: uni.$u.props.code.keepRunning
 | 
			
		||||
        },
 | 
			
		||||
        // 为了区分多个页面,或者一个页面多个倒计时组件本地存储的继续倒计时变了
 | 
			
		||||
        uniqueKey: {
 | 
			
		||||
            type: String,
 | 
			
		||||
            default: uni.$u.props.code.uniqueKey
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,65 @@
 | 
			
		||||
export default {
 | 
			
		||||
    props: {
 | 
			
		||||
        // 标题选中时的样式
 | 
			
		||||
        activeStyle: {
 | 
			
		||||
            type: [String, Object],
 | 
			
		||||
            default: () => ({
 | 
			
		||||
                color: '#2979ff',
 | 
			
		||||
                fontSize: '14px'
 | 
			
		||||
            })
 | 
			
		||||
        },
 | 
			
		||||
        // 标题未选中时的样式
 | 
			
		||||
        inactiveStyle: {
 | 
			
		||||
            type: [String, Object],
 | 
			
		||||
            default: () => ({
 | 
			
		||||
                color: '#606266',
 | 
			
		||||
                fontSize: '14px'
 | 
			
		||||
            })
 | 
			
		||||
        },
 | 
			
		||||
        // 点击遮罩是否关闭菜单
 | 
			
		||||
        closeOnClickMask: {
 | 
			
		||||
            type: Boolean,
 | 
			
		||||
            default: true
 | 
			
		||||
        },
 | 
			
		||||
        // 点击当前激活项标题是否关闭菜单
 | 
			
		||||
        closeOnClickSelf: {
 | 
			
		||||
            type: Boolean,
 | 
			
		||||
            default: true
 | 
			
		||||
        },
 | 
			
		||||
        // 过渡时间
 | 
			
		||||
        duration: {
 | 
			
		||||
            type: [Number, String],
 | 
			
		||||
            default: 300
 | 
			
		||||
        },
 | 
			
		||||
        // 标题菜单的高度
 | 
			
		||||
        height: {
 | 
			
		||||
            type: [Number, String],
 | 
			
		||||
            default: 40
 | 
			
		||||
        },
 | 
			
		||||
        // 是否显示下边框
 | 
			
		||||
        borderBottom: {
 | 
			
		||||
            type: Boolean,
 | 
			
		||||
            default: false
 | 
			
		||||
        },
 | 
			
		||||
        // 标题的字体大小
 | 
			
		||||
        titleSize: {
 | 
			
		||||
            type: [Number, String],
 | 
			
		||||
            default: 14
 | 
			
		||||
        },
 | 
			
		||||
        // 下拉出来的内容部分的圆角值
 | 
			
		||||
        borderRadius: {
 | 
			
		||||
            type: [Number, String],
 | 
			
		||||
            default: 0
 | 
			
		||||
        },
 | 
			
		||||
        // 菜单右侧的icon图标
 | 
			
		||||
        menuIcon: {
 | 
			
		||||
            type: String,
 | 
			
		||||
            default: 'arrow-down'
 | 
			
		||||
        },
 | 
			
		||||
        // 菜单右侧图标的大小
 | 
			
		||||
        menuIconSize: {
 | 
			
		||||
            type: [Number, String],
 | 
			
		||||
            default: 14
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,14 @@
 | 
			
		||||
export default {
 | 
			
		||||
    props: {
 | 
			
		||||
        // 宫格的name
 | 
			
		||||
        name: {
 | 
			
		||||
            type: [String, Number, null],
 | 
			
		||||
            default: uni.$u.props.gridItem.name
 | 
			
		||||
        },
 | 
			
		||||
        // 背景颜色
 | 
			
		||||
        bgColor: {
 | 
			
		||||
            type: String,
 | 
			
		||||
            default: uni.$u.props.gridItem.bgColor
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,19 @@
 | 
			
		||||
export default {
 | 
			
		||||
    props: {
 | 
			
		||||
        // 分成几列
 | 
			
		||||
        col: {
 | 
			
		||||
            type: [String, Number],
 | 
			
		||||
            default: uni.$u.props.grid.col
 | 
			
		||||
        },
 | 
			
		||||
        // 是否显示边框
 | 
			
		||||
        border: {
 | 
			
		||||
            type: Boolean,
 | 
			
		||||
            default: uni.$u.props.grid.border
 | 
			
		||||
        },
 | 
			
		||||
        // 宫格对齐方式,表现为数量少的时候,靠左,居中,还是靠右
 | 
			
		||||
        align: {
 | 
			
		||||
            type: String,
 | 
			
		||||
            default: uni.$u.props.grid.align
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,214 @@
 | 
			
		||||
export default {
 | 
			
		||||
    'uicon-level': '\ue693',
 | 
			
		||||
    'uicon-column-line': '\ue68e',
 | 
			
		||||
    'uicon-checkbox-mark': '\ue807',
 | 
			
		||||
    'uicon-folder': '\ue7f5',
 | 
			
		||||
    'uicon-movie': '\ue7f6',
 | 
			
		||||
    'uicon-star-fill': '\ue669',
 | 
			
		||||
    'uicon-star': '\ue65f',
 | 
			
		||||
    'uicon-phone-fill': '\ue64f',
 | 
			
		||||
    'uicon-phone': '\ue622',
 | 
			
		||||
    'uicon-apple-fill': '\ue881',
 | 
			
		||||
    'uicon-chrome-circle-fill': '\ue885',
 | 
			
		||||
    'uicon-backspace': '\ue67b',
 | 
			
		||||
    'uicon-attach': '\ue632',
 | 
			
		||||
    'uicon-cut': '\ue948',
 | 
			
		||||
    'uicon-empty-car': '\ue602',
 | 
			
		||||
    'uicon-empty-coupon': '\ue682',
 | 
			
		||||
    'uicon-empty-address': '\ue646',
 | 
			
		||||
    'uicon-empty-favor': '\ue67c',
 | 
			
		||||
    'uicon-empty-permission': '\ue686',
 | 
			
		||||
    'uicon-empty-news': '\ue687',
 | 
			
		||||
    'uicon-empty-search': '\ue664',
 | 
			
		||||
    'uicon-github-circle-fill': '\ue887',
 | 
			
		||||
    'uicon-rmb': '\ue608',
 | 
			
		||||
    'uicon-person-delete-fill': '\ue66a',
 | 
			
		||||
    'uicon-reload': '\ue788',
 | 
			
		||||
    'uicon-order': '\ue68f',
 | 
			
		||||
    'uicon-server-man': '\ue6bc',
 | 
			
		||||
    'uicon-search': '\ue62a',
 | 
			
		||||
    'uicon-fingerprint': '\ue955',
 | 
			
		||||
    'uicon-more-dot-fill': '\ue630',
 | 
			
		||||
    'uicon-scan': '\ue662',
 | 
			
		||||
    'uicon-share-square': '\ue60b',
 | 
			
		||||
    'uicon-map': '\ue61d',
 | 
			
		||||
    'uicon-map-fill': '\ue64e',
 | 
			
		||||
    'uicon-tags': '\ue629',
 | 
			
		||||
    'uicon-tags-fill': '\ue651',
 | 
			
		||||
    'uicon-bookmark-fill': '\ue63b',
 | 
			
		||||
    'uicon-bookmark': '\ue60a',
 | 
			
		||||
    'uicon-eye': '\ue613',
 | 
			
		||||
    'uicon-eye-fill': '\ue641',
 | 
			
		||||
    'uicon-mic': '\ue64a',
 | 
			
		||||
    'uicon-mic-off': '\ue649',
 | 
			
		||||
    'uicon-calendar': '\ue66e',
 | 
			
		||||
    'uicon-calendar-fill': '\ue634',
 | 
			
		||||
    'uicon-trash': '\ue623',
 | 
			
		||||
    'uicon-trash-fill': '\ue658',
 | 
			
		||||
    'uicon-play-left': '\ue66d',
 | 
			
		||||
    'uicon-play-right': '\ue610',
 | 
			
		||||
    'uicon-minus': '\ue618',
 | 
			
		||||
    'uicon-plus': '\ue62d',
 | 
			
		||||
    'uicon-info': '\ue653',
 | 
			
		||||
    'uicon-info-circle': '\ue7d2',
 | 
			
		||||
    'uicon-info-circle-fill': '\ue64b',
 | 
			
		||||
    'uicon-question': '\ue715',
 | 
			
		||||
    'uicon-error': '\ue6d3',
 | 
			
		||||
    'uicon-close': '\ue685',
 | 
			
		||||
    'uicon-checkmark': '\ue6a8',
 | 
			
		||||
    'uicon-android-circle-fill': '\ue67e',
 | 
			
		||||
    'uicon-android-fill': '\ue67d',
 | 
			
		||||
    'uicon-ie': '\ue87b',
 | 
			
		||||
    'uicon-IE-circle-fill': '\ue889',
 | 
			
		||||
    'uicon-google': '\ue87a',
 | 
			
		||||
    'uicon-google-circle-fill': '\ue88a',
 | 
			
		||||
    'uicon-setting-fill': '\ue872',
 | 
			
		||||
    'uicon-setting': '\ue61f',
 | 
			
		||||
    'uicon-minus-square-fill': '\ue855',
 | 
			
		||||
    'uicon-plus-square-fill': '\ue856',
 | 
			
		||||
    'uicon-heart': '\ue7df',
 | 
			
		||||
    'uicon-heart-fill': '\ue851',
 | 
			
		||||
    'uicon-camera': '\ue7d7',
 | 
			
		||||
    'uicon-camera-fill': '\ue870',
 | 
			
		||||
    'uicon-more-circle': '\ue63e',
 | 
			
		||||
    'uicon-more-circle-fill': '\ue645',
 | 
			
		||||
    'uicon-chat': '\ue620',
 | 
			
		||||
    'uicon-chat-fill': '\ue61e',
 | 
			
		||||
    'uicon-bag-fill': '\ue617',
 | 
			
		||||
    'uicon-bag': '\ue619',
 | 
			
		||||
    'uicon-error-circle-fill': '\ue62c',
 | 
			
		||||
    'uicon-error-circle': '\ue624',
 | 
			
		||||
    'uicon-close-circle': '\ue63f',
 | 
			
		||||
    'uicon-close-circle-fill': '\ue637',
 | 
			
		||||
    'uicon-checkmark-circle': '\ue63d',
 | 
			
		||||
    'uicon-checkmark-circle-fill': '\ue635',
 | 
			
		||||
    'uicon-question-circle-fill': '\ue666',
 | 
			
		||||
    'uicon-question-circle': '\ue625',
 | 
			
		||||
    'uicon-share': '\ue631',
 | 
			
		||||
    'uicon-share-fill': '\ue65e',
 | 
			
		||||
    'uicon-shopping-cart': '\ue621',
 | 
			
		||||
    'uicon-shopping-cart-fill': '\ue65d',
 | 
			
		||||
    'uicon-bell': '\ue609',
 | 
			
		||||
    'uicon-bell-fill': '\ue640',
 | 
			
		||||
    'uicon-list': '\ue650',
 | 
			
		||||
    'uicon-list-dot': '\ue616',
 | 
			
		||||
    'uicon-zhihu': '\ue6ba',
 | 
			
		||||
    'uicon-zhihu-circle-fill': '\ue709',
 | 
			
		||||
    'uicon-zhifubao': '\ue6b9',
 | 
			
		||||
    'uicon-zhifubao-circle-fill': '\ue6b8',
 | 
			
		||||
    'uicon-weixin-circle-fill': '\ue6b1',
 | 
			
		||||
    'uicon-weixin-fill': '\ue6b2',
 | 
			
		||||
    'uicon-twitter-circle-fill': '\ue6ab',
 | 
			
		||||
    'uicon-twitter': '\ue6aa',
 | 
			
		||||
    'uicon-taobao-circle-fill': '\ue6a7',
 | 
			
		||||
    'uicon-taobao': '\ue6a6',
 | 
			
		||||
    'uicon-weibo-circle-fill': '\ue6a5',
 | 
			
		||||
    'uicon-weibo': '\ue6a4',
 | 
			
		||||
    'uicon-qq-fill': '\ue6a1',
 | 
			
		||||
    'uicon-qq-circle-fill': '\ue6a0',
 | 
			
		||||
    'uicon-moments-circel-fill': '\ue69a',
 | 
			
		||||
    'uicon-moments': '\ue69b',
 | 
			
		||||
    'uicon-qzone': '\ue695',
 | 
			
		||||
    'uicon-qzone-circle-fill': '\ue696',
 | 
			
		||||
    'uicon-baidu-circle-fill': '\ue680',
 | 
			
		||||
    'uicon-baidu': '\ue681',
 | 
			
		||||
    'uicon-facebook-circle-fill': '\ue68a',
 | 
			
		||||
    'uicon-facebook': '\ue689',
 | 
			
		||||
    'uicon-car': '\ue60c',
 | 
			
		||||
    'uicon-car-fill': '\ue636',
 | 
			
		||||
    'uicon-warning-fill': '\ue64d',
 | 
			
		||||
    'uicon-warning': '\ue694',
 | 
			
		||||
    'uicon-clock-fill': '\ue638',
 | 
			
		||||
    'uicon-clock': '\ue60f',
 | 
			
		||||
    'uicon-edit-pen': '\ue612',
 | 
			
		||||
    'uicon-edit-pen-fill': '\ue66b',
 | 
			
		||||
    'uicon-email': '\ue611',
 | 
			
		||||
    'uicon-email-fill': '\ue642',
 | 
			
		||||
    'uicon-minus-circle': '\ue61b',
 | 
			
		||||
    'uicon-minus-circle-fill': '\ue652',
 | 
			
		||||
    'uicon-plus-circle': '\ue62e',
 | 
			
		||||
    'uicon-plus-circle-fill': '\ue661',
 | 
			
		||||
    'uicon-file-text': '\ue663',
 | 
			
		||||
    'uicon-file-text-fill': '\ue665',
 | 
			
		||||
    'uicon-pushpin': '\ue7e3',
 | 
			
		||||
    'uicon-pushpin-fill': '\ue86e',
 | 
			
		||||
    'uicon-grid': '\ue673',
 | 
			
		||||
    'uicon-grid-fill': '\ue678',
 | 
			
		||||
    'uicon-play-circle': '\ue647',
 | 
			
		||||
    'uicon-play-circle-fill': '\ue655',
 | 
			
		||||
    'uicon-pause-circle-fill': '\ue654',
 | 
			
		||||
    'uicon-pause': '\ue8fa',
 | 
			
		||||
    'uicon-pause-circle': '\ue643',
 | 
			
		||||
    'uicon-eye-off': '\ue648',
 | 
			
		||||
    'uicon-eye-off-outline': '\ue62b',
 | 
			
		||||
    'uicon-gift-fill': '\ue65c',
 | 
			
		||||
    'uicon-gift': '\ue65b',
 | 
			
		||||
    'uicon-rmb-circle-fill': '\ue657',
 | 
			
		||||
    'uicon-rmb-circle': '\ue677',
 | 
			
		||||
    'uicon-kefu-ermai': '\ue656',
 | 
			
		||||
    'uicon-server-fill': '\ue751',
 | 
			
		||||
    'uicon-coupon-fill': '\ue8c4',
 | 
			
		||||
    'uicon-coupon': '\ue8ae',
 | 
			
		||||
    'uicon-integral': '\ue704',
 | 
			
		||||
    'uicon-integral-fill': '\ue703',
 | 
			
		||||
    'uicon-home-fill': '\ue964',
 | 
			
		||||
    'uicon-home': '\ue965',
 | 
			
		||||
    'uicon-hourglass-half-fill': '\ue966',
 | 
			
		||||
    'uicon-hourglass': '\ue967',
 | 
			
		||||
    'uicon-account': '\ue628',
 | 
			
		||||
    'uicon-plus-people-fill': '\ue626',
 | 
			
		||||
    'uicon-minus-people-fill': '\ue615',
 | 
			
		||||
    'uicon-account-fill': '\ue614',
 | 
			
		||||
    'uicon-thumb-down-fill': '\ue726',
 | 
			
		||||
    'uicon-thumb-down': '\ue727',
 | 
			
		||||
    'uicon-thumb-up': '\ue733',
 | 
			
		||||
    'uicon-thumb-up-fill': '\ue72f',
 | 
			
		||||
    'uicon-lock-fill': '\ue979',
 | 
			
		||||
    'uicon-lock-open': '\ue973',
 | 
			
		||||
    'uicon-lock-opened-fill': '\ue974',
 | 
			
		||||
    'uicon-lock': '\ue97a',
 | 
			
		||||
    'uicon-red-packet-fill': '\ue690',
 | 
			
		||||
    'uicon-photo-fill': '\ue98b',
 | 
			
		||||
    'uicon-photo': '\ue98d',
 | 
			
		||||
    'uicon-volume-off-fill': '\ue659',
 | 
			
		||||
    'uicon-volume-off': '\ue644',
 | 
			
		||||
    'uicon-volume-fill': '\ue670',
 | 
			
		||||
    'uicon-volume': '\ue633',
 | 
			
		||||
    'uicon-red-packet': '\ue691',
 | 
			
		||||
    'uicon-download': '\ue63c',
 | 
			
		||||
    'uicon-arrow-up-fill': '\ue6b0',
 | 
			
		||||
    'uicon-arrow-down-fill': '\ue600',
 | 
			
		||||
    'uicon-play-left-fill': '\ue675',
 | 
			
		||||
    'uicon-play-right-fill': '\ue676',
 | 
			
		||||
    'uicon-rewind-left-fill': '\ue679',
 | 
			
		||||
    'uicon-rewind-right-fill': '\ue67a',
 | 
			
		||||
    'uicon-arrow-downward': '\ue604',
 | 
			
		||||
    'uicon-arrow-leftward': '\ue601',
 | 
			
		||||
    'uicon-arrow-rightward': '\ue603',
 | 
			
		||||
    'uicon-arrow-upward': '\ue607',
 | 
			
		||||
    'uicon-arrow-down': '\ue60d',
 | 
			
		||||
    'uicon-arrow-right': '\ue605',
 | 
			
		||||
    'uicon-arrow-left': '\ue60e',
 | 
			
		||||
    'uicon-arrow-up': '\ue606',
 | 
			
		||||
    'uicon-skip-back-left': '\ue674',
 | 
			
		||||
    'uicon-skip-forward-right': '\ue672',
 | 
			
		||||
    'uicon-rewind-right': '\ue66f',
 | 
			
		||||
    'uicon-rewind-left': '\ue671',
 | 
			
		||||
    'uicon-arrow-right-double': '\ue68d',
 | 
			
		||||
    'uicon-arrow-left-double': '\ue68c',
 | 
			
		||||
    'uicon-wifi-off': '\ue668',
 | 
			
		||||
    'uicon-wifi': '\ue667',
 | 
			
		||||
    'uicon-empty-data': '\ue62f',
 | 
			
		||||
    'uicon-empty-history': '\ue684',
 | 
			
		||||
    'uicon-empty-list': '\ue68b',
 | 
			
		||||
    'uicon-empty-page': '\ue627',
 | 
			
		||||
    'uicon-empty-order': '\ue639',
 | 
			
		||||
    'uicon-man': '\ue697',
 | 
			
		||||
    'uicon-woman': '\ue69c',
 | 
			
		||||
    'uicon-man-add': '\ue61c',
 | 
			
		||||
    'uicon-man-add-fill': '\ue64c',
 | 
			
		||||
    'uicon-man-delete': '\ue61a',
 | 
			
		||||
    'uicon-man-delete-fill': '\ue66a',
 | 
			
		||||
    'uicon-zh': '\ue70a',
 | 
			
		||||
    'uicon-en': '\ue692'
 | 
			
		||||
}
 | 
			
		||||
Some files were not shown because too many files have changed in this diff Show More
					Loading…
					
					
				
		Reference in New Issue