对比新文件 |
| | |
| | | { // launch.json 配置了启动调试时相关设置,configurations下节点名称可为 app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/ |
| | | // launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数 |
| | | "version": "0.0", |
| | | "configurations": [{ |
| | | "default" : |
| | | { |
| | | "launchtype" : "local" |
| | | }, |
| | | "mp-weixin" : |
| | | { |
| | | "launchtype" : "local" |
| | | }, |
| | | "type" : "uniCloud" |
| | | } |
| | | ] |
| | | } |
对比新文件 |
| | |
| | | { |
| | | "name": "water-drinking-uniapp", |
| | | "lockfileVersion": 3, |
| | | "requires": true, |
| | | "packages": {} |
| | | } |
对比新文件 |
| | |
| | | { |
| | | "name": "water-drinking-uniapp", |
| | | "version": "1.0.0", |
| | | "description": "", |
| | | "main": "main.js", |
| | | "dependencies":{ |
| | | "@dcloudio/uni-ui": "^1.4.28" |
| | | }, |
| | | "devDependencies": {}, |
| | | "scripts": { |
| | | "test": "echo \"Error: no test specified\" && exit 1" |
| | | }, |
| | | "keywords": [], |
| | | "author": "", |
| | | "license": "ISC" |
| | | } |
| | |
| | | { |
| | | "path": "pages/index/index", |
| | | "style": { |
| | | "navigationBarTitleText": "uni-app" |
| | | "navigationStyle":"custom" |
| | | } |
| | | }, |
| | | { |
| | | "path": "pages/login/index", |
| | | "style": { |
| | | "navigationStyle":"custom" |
| | | } |
| | | } |
| | | ], |
| | | "globalStyle": { |
| | | "navigationBarTextStyle": "black", |
| | | "navigationBarTitleText": "uni-app", |
| | | "navigationBarBackgroundColor": "#F8F8F8", |
| | | "backgroundColor": "#F8F8F8" |
| | | // "navigationBarTextStyle": "black", |
| | | // "navigationBarTitleText": "uni-app", |
| | | // "navigationBarBackgroundColor": "#F8F8F8", |
| | | // "backgroundColor": "#F8F8F8", |
| | | "navigationStyle": "custom" |
| | | }, |
| | | "uniIdRouter": {} |
| | | // "uniIdRouter": {}, |
| | | "easycom": { |
| | | "autoscan": true, |
| | | "custom": { |
| | | // uni-ui 规则如下配置 |
| | | "^uni-(.*)": "@dcloudio/uni-ui/lib/uni-$1/uni-$1.vue" |
| | | } |
| | | } |
| | | } |
| | |
| | | import { onMounted } from "vue" |
| | | |
| | | <template> |
| | | <view class="content"> |
| | | <image class="logo" src="/static/logo.png"></image> |
| | | <view class="text-area"> |
| | | <text class="title">{{title}}</text> |
| | | <view class="container"> |
| | | <view class="content"> |
| | | <view class="card-box" :style="{paddingTop:capsuleHeight + 'rpx'}"> |
| | | <view class="card"></view> |
| | | </view> |
| | | <view class="function-box1"> |
| | | <view class="box1-bg"></view> |
| | | <view class="box1-bg"></view> |
| | | <view class="box1-bg"></view> |
| | | </view> |
| | | <view class="function-box2"> |
| | | <view class="box2-title"><text>功能列表</text></view> |
| | | <view class="box2-content"> |
| | | <block v-for="(item,index) in functionList" :key="index"> |
| | | <view class="box2-item" @click="navTo(item.url)"> |
| | | <image :src= "item.icon" alt=""></image> |
| | | <view class="box2-item-text">{{item.text}}</view> |
| | | </view> |
| | | </block> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <button @click="back()"></button> |
| | | </view> |
| | | </template> |
| | | |
| | | <script> |
| | | export default { |
| | | data() { |
| | | return { |
| | | title: 'Hello' |
| | | } |
| | | }, |
| | | onLoad() { |
| | | |
| | | }, |
| | | methods: { |
| | | |
| | | } |
| | | <script setup> |
| | | import { onMounted, ref } from "vue" |
| | | const back = () =>{ |
| | | // uni.navigateBack() |
| | | uni.navigateTo({ |
| | | url:"/pages/login/index" |
| | | }) |
| | | } |
| | | //胶囊高度 |
| | | const capsuleHeight = ref(0) |
| | | onMounted(() =>{ |
| | | if(uni.getMenuButtonBoundingClientRect){ |
| | | capsuleHeight.value = (uni.getMenuButtonBoundingClientRect().top + uni.getMenuButtonBoundingClientRect().height) * 2 |
| | | } |
| | | }) |
| | | /** |
| | | * 功能列表相关 |
| | | */ |
| | | const functionList = ref([ |
| | | {text:'余额',icon:'../../static/images/index/icon31.png',url:'/pages/login/index'}, |
| | | {text:'余额',icon:'../../static/images/index/icon32.png',url:'/pages/login/index'}, |
| | | {text:'余额',icon:'../../static/images/index/icon33.png',url:'/pages/login/index'}, |
| | | {text:'余额',icon:'../../static/images/index/icon34.png',url:'/pages/login/index'}, |
| | | {text:'余额',icon:'../../static/images/index/icon35.png',url:'/pages/login/index'}, |
| | | {text:'余额',icon:'../../static/images/index/icon36.png',url:'/pages/login/index'}, |
| | | {text:'余额',icon:'../../static/images/index/icon37.png',url:'/pages/login/index'}, |
| | | {text:'余额',icon:'../../static/images/index/icon38.png',url:'/pages/login/index'}, |
| | | ]) |
| | | |
| | | </script> |
| | | |
| | | <style> |
| | | .content { |
| | | <style lang="scss" scoped> |
| | | .container{ |
| | | width:100%; |
| | | height:100vh; |
| | | overflow:scroll; |
| | | .content{ |
| | | width:100%; |
| | | height:100vh; |
| | | background:#F6F6F6; |
| | | } |
| | | } |
| | | .card-box{ |
| | | width: 100%; |
| | | height: auto; |
| | | // background: #a0b5c7; |
| | | box-sizing: border-box; |
| | | padding: 0 32rpx; |
| | | background: linear-gradient(to bottom,#5EA1FA,#D2F2FE); |
| | | .card{ |
| | | width: 100%; |
| | | height: 304rpx; |
| | | background-image: url("../../static/images/index/card1.png"); |
| | | background-repeat: no-repeat; |
| | | background-size: 100%; |
| | | |
| | | } |
| | | } |
| | | .function-box1{ |
| | | width:100%; |
| | | box-sizing:border-box; |
| | | height: 264rpx; |
| | | padding: 32rpx; |
| | | // background: rgba(85, 170, 0, 0.1); |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | justify-content: center; |
| | | .box1-bg{ |
| | | width:212rpx; |
| | | height:200rpx; |
| | | border-radius:24rpx; |
| | | background: #fff; |
| | | box-shadow:0 0 12rpx 2rpx rgba(13,118,255,0.16); |
| | | } |
| | | } |
| | | |
| | | .logo { |
| | | height: 200rpx; |
| | | width: 200rpx; |
| | | margin-top: 200rpx; |
| | | margin-left: auto; |
| | | margin-right: auto; |
| | | margin-bottom: 50rpx; |
| | | .function-box2{ |
| | | width:100%; |
| | | box-sizing:border-box; |
| | | height: 460rpx;//374 + 44 + 距离 + 底部padding32 |
| | | padding:0 32rpx 32rpx; |
| | | // background: rgba(46, 121, 170, 0.5); |
| | | .box2-title{ |
| | | width: 100%; |
| | | font-weight:300; |
| | | font-size: 32rpx; |
| | | color: #000000; |
| | | text-align: left; |
| | | margin-bottom: 10rpx; |
| | | margin-left: 30rpx; |
| | | } |
| | | .box2-content{ |
| | | box-sizing: border-box; |
| | | padding:30rpx 50rpx; |
| | | width: 686rpx; |
| | | height:374rpx; |
| | | background: #fff; |
| | | border-radius: 24rpx; |
| | | box-shadow: 0 0 12rpx 2rpx rgba(0, 0, 0, 0.1); |
| | | display: flex; |
| | | flex-wrap: wrap; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | .box2-item{ |
| | | width: 120rpx; |
| | | height:130rpx; |
| | | image{ |
| | | width: 90rpx; |
| | | height:90rpx; |
| | | margin: 0 auto; |
| | | } |
| | | .box2-item-text{ |
| | | width:100%; |
| | | height: 40rpx; |
| | | font-weight: 300; |
| | | font-size: 28rpx; |
| | | color: #000000; |
| | | text-align: center; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | .text-area { |
| | | display: flex; |
| | | justify-content: center; |
| | | } |
| | | |
| | | .title { |
| | | font-size: 36rpx; |
| | | color: #8f8f94; |
| | | button{ |
| | | width:100rpx; |
| | | height:50rpx |
| | | } |
| | | </style> |
对比新文件 |
| | |
| | | |
| | | <script setup> |
| | | import { onMounted, ref } from "vue" |
| | | // 微信授权登录相关 |
| | | let popupRef = ref(null) |
| | | const login = () =>{ |
| | | uni.navigateTo({ |
| | | url:"/pages/index/index" |
| | | }) |
| | | console.log('login1') |
| | | } |
| | | const wxLoginPopup = () =>{ |
| | | popupRef.value.open('bottom') |
| | | } |
| | | const wxLoginFn = () =>{ |
| | | console.log('login2') |
| | | popupRef.value.close('bottom') |
| | | } |
| | | </script> |
| | | <template> |
| | | <view class="container"> |
| | | <view class="content"> |
| | | <view class="title"> |
| | | <view class= 'text1'>欢迎登录</view> |
| | | <view class= 'text2'>Welcome to login</view> |
| | | </view> |
| | | <view class="form"> |
| | | <view class='form-input'><input type="text" placeholder="输入账号"></input></view> |
| | | <view class="form-input"><input password type="text" placeholder="输入密码"></input></view> |
| | | </view> |
| | | <view class="login-btn"> |
| | | <button @click = login()>登录</button> |
| | | </view> |
| | | <view class="bottom"> |
| | | <view class="divide"> |
| | | <view class="line"></view> |
| | | <view class="divide-text">第三方账号登录</view> |
| | | <view class="line"></view> |
| | | </view> |
| | | <view class="other-login"> |
| | | <img src="../../static/images/login/wechat.png" alt="" @click="wxLoginPopup()"/> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <!-- 微信授权弹窗 --> |
| | | <uni-popup ref="popupRef" background-color="#fff"> |
| | | <view class="popup-content"> |
| | | <text class="popup-title">微信登录</text> |
| | | <view class="hr"></view> |
| | | <view class="img-box"><img src="../../static/images/login/logo.png" alt="" class="img"/></view> |
| | | <view class="info-box"> |
| | | <view class="info-text1">青源直饮水平台申请获取以下权限:</view> |
| | | <view class="hr2"></view> |
| | | <view class="info-text2">· 获得你的公开信息(昵称、头像、地区及性别)</view> |
| | | <view class="button-box"> |
| | | <button class="button1" @click="popupRef.close('bottom')">取消</button> |
| | | <button class="button2" @click="wxLoginFn()">确定</button> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </uni-popup> |
| | | </view> |
| | | </template> |
| | | |
| | | <style lang ="scss"> |
| | | page { |
| | | width: 100%; |
| | | height:100%; |
| | | } |
| | | .container{ |
| | | width:100%; |
| | | height:100%; |
| | | background-image:url('../../static/images/login/bg2.png'); |
| | | background-size: 100%; |
| | | background-repeat: no-repeat; |
| | | position: relative; |
| | | .content{ |
| | | position: absolute; |
| | | width:680rpx; |
| | | height:1080rpx; |
| | | top:22%; |
| | | left:calc(50% - 340rpx); |
| | | background-image:url('../../static/images/login/content-bg.png'); |
| | | background-repeat: no-repeat; |
| | | background-size: 100%; |
| | | .title{ |
| | | width:100%; |
| | | height:180rpx; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: flex-start; |
| | | padding: 9% 0 0 13%; |
| | | box-sizing:border-box; |
| | | .text1{ |
| | | width:250rpx; |
| | | font-weight: 500; |
| | | font-size: 56rpx; |
| | | color: #345DB1; |
| | | text-align: left; |
| | | margin-left:14rpx; |
| | | margin-bottom:20rpx; |
| | | } |
| | | .text2{ |
| | | width:500rpx; |
| | | font-weight: 400; |
| | | font-size: 36rpx; |
| | | color: #9AB6DD; |
| | | text-align: left; |
| | | } |
| | | } |
| | | .form{ |
| | | width:100%; |
| | | height:260rpx; |
| | | margin-top: 125rpx; |
| | | /* background-color: #345DB1; */ |
| | | box-sizing:border-box; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: space-between; |
| | | .form-input{ |
| | | width:582rpx; |
| | | height:100rpx; |
| | | background-image: url('../../static/images/login/input1.png'); |
| | | background-repeat: no-repeat; |
| | | background-size: 100%; |
| | | background-position: center; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content:flex-start; |
| | | margin: 0 auto; |
| | | :deep(.uni-input-placeholder ){ |
| | | color: #9DC4E8; |
| | | } |
| | | input{ |
| | | width:80%; |
| | | margin-left:60rpx; |
| | | font-weight: 400; |
| | | font-size: 32rpx; |
| | | text-align: left; |
| | | color: #2b4e82; |
| | | } |
| | | } |
| | | } |
| | | .login-btn{ |
| | | width:530rpx; |
| | | height:100rpx; |
| | | margin: 80rpx auto 60rpx; |
| | | button{ |
| | | background:linear-gradient(to right,#51C9F6,#4E9BFF); |
| | | font-weight: 500; |
| | | font-size: 36rpx; |
| | | color: #FFFFFF; |
| | | border-radius: 20rpx; |
| | | } |
| | | } |
| | | .bottom{ |
| | | width:100%; |
| | | height:180rpx; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | .divide{ |
| | | box-sizing:border-box; |
| | | width: 100%; |
| | | display:flex; |
| | | justify-content: space-between; |
| | | align-items:center; |
| | | padding:0 85rpx; |
| | | /* background: #446f52; */ |
| | | .line{ |
| | | width:125rpx; |
| | | height:2rpx; |
| | | background:#959595; |
| | | } |
| | | .divide-text{ |
| | | font-weight: 600; |
| | | font-size: 28rpx; |
| | | color: #B9B9B9; |
| | | text-align: center; |
| | | } |
| | | } |
| | | .other-login{ |
| | | box-sizing:border-box; |
| | | width:100%; |
| | | height:100rpx; |
| | | /* background: #5d7682; */ |
| | | padding:0 90rpx; |
| | | display: flex; |
| | | justify-content:center; |
| | | align-items: center; |
| | | img{ |
| | | width:76rpx; |
| | | height:76rpx; |
| | | /* background: #345DB1; */ |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | .popup-content { |
| | | height: 560rpx; |
| | | position: relative; |
| | | z-index: 1000; |
| | | .popup-title{ |
| | | width: 100%; |
| | | display: block; |
| | | text-align: center; |
| | | margin: 15rpx 0; |
| | | font-weight: 600; |
| | | font-size: 36rpx; |
| | | } |
| | | .hr { |
| | | width: 100%; |
| | | height: 2rpx; |
| | | background: #e2e2e2; |
| | | } |
| | | .img-box { |
| | | width: 65rpx; |
| | | height: 65rpx; |
| | | margin: 40rpx auto 30rpx; |
| | | border: 1rpx solid #e2e2e2; |
| | | border-radius: 50%; |
| | | padding: 15rpx; |
| | | .img{ |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | } |
| | | .info-box { |
| | | width: 100%; |
| | | padding: 0 80rpx; |
| | | box-sizing: border-box; |
| | | .hr2{ |
| | | width: 100%; |
| | | height: 2rpx; |
| | | background: #e2e2e2; |
| | | margin: 20rpx 0; |
| | | } |
| | | .info-text2{ |
| | | font-size: 26rpx; |
| | | color: #767676; |
| | | } |
| | | } |
| | | .button-box{ |
| | | display: flex; |
| | | margin-top: 20rpx; |
| | | button{ |
| | | width: 230rpx; |
| | | height: 80rpx; |
| | | line-height: 80rpx; |
| | | border: none; |
| | | box-shadow: none; |
| | | margin-top: 30rpx; |
| | | } |
| | | button::after { |
| | | border: none !important; |
| | | } |
| | | .button1{ |
| | | background-color: #F0F0F0; |
| | | color: #333333; |
| | | } |
| | | .button2{ |
| | | background-color: #06BF5E; |
| | | color: #ffffff; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </style> |
| | |
| | | { |
| | | "hash": "b68c4d1e", |
| | | "configHash": "d5ed2199", |
| | | "lockfileHash": "e3b0c442", |
| | | "browserHash": "6500e178", |
| | | "hash": "bb2e2c43", |
| | | "configHash": "539dec94", |
| | | "lockfileHash": "f3d35e11", |
| | | "browserHash": "ee67bce4", |
| | | "optimized": {}, |
| | | "chunks": {} |
| | | } |
对比新文件 |
| | |
| | | "use strict"; |
| | | Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); |
| | | const common_vendor = require("./common/vendor.js"); |
| | | if (!Math) { |
| | | "./pages/index/index.js"; |
| | | "./pages/login/index.js"; |
| | | } |
| | | const _sfc_main = { |
| | | __name: "App", |
| | | setup(__props) { |
| | | common_vendor.onLaunch(() => { |
| | | console.log("App Launch"); |
| | | }); |
| | | common_vendor.onShow(() => { |
| | | console.log("App Show"); |
| | | }); |
| | | common_vendor.onHide(() => { |
| | | console.log("App Hide"); |
| | | }); |
| | | return () => { |
| | | }; |
| | | } |
| | | }; |
| | | function createApp() { |
| | | const app = common_vendor.createSSRApp(_sfc_main); |
| | | return { |
| | | app |
| | | }; |
| | | } |
| | | createApp().app.mount("#app"); |
| | | exports.createApp = createApp; |
对比新文件 |
| | |
| | | { |
| | | "pages": [ |
| | | "pages/index/index", |
| | | "pages/login/index" |
| | | ], |
| | | "window": { |
| | | "navigationStyle": "custom" |
| | | }, |
| | | "usingComponents": {} |
| | | } |
对比新文件 |
| | |
| | | |
| | | /*每个页面公共css */ |
| | | page{--status-bar-height:25px;--top-window-height:0px;--window-top:0px;--window-bottom:0px;--window-left:0px;--window-right:0px;--window-magin:0px}[data-c-h="true"]{display: none !important;} |
对比新文件 |
| | |
| | | "use strict"; |
| | | const _imports_0 = "/static/images/login/wechat.png"; |
| | | const _imports_1 = "/static/images/login/logo.png"; |
| | | exports._imports_0 = _imports_0; |
| | | exports._imports_1 = _imports_1; |
对比新文件 |
| | |
| | | "use strict"; |
| | | const common_vendor = require("../../../../../common/vendor.js"); |
| | | const _sfc_main = { |
| | | name: "uniPopup", |
| | | components: {}, |
| | | emits: ["change", "maskClick"], |
| | | props: { |
| | | // 开启动画 |
| | | animation: { |
| | | type: Boolean, |
| | | default: true |
| | | }, |
| | | // 弹出层类型,可选值,top: 顶部弹出层;bottom:底部弹出层;center:全屏弹出层 |
| | | // message: 消息提示 ; dialog : 对话框 |
| | | type: { |
| | | type: String, |
| | | default: "center" |
| | | }, |
| | | // maskClick |
| | | isMaskClick: { |
| | | type: Boolean, |
| | | default: null |
| | | }, |
| | | // TODO 2 个版本后废弃属性 ,使用 isMaskClick |
| | | maskClick: { |
| | | type: Boolean, |
| | | default: null |
| | | }, |
| | | backgroundColor: { |
| | | type: String, |
| | | default: "none" |
| | | }, |
| | | safeArea: { |
| | | type: Boolean, |
| | | default: true |
| | | }, |
| | | maskBackgroundColor: { |
| | | type: String, |
| | | default: "rgba(0, 0, 0, 0.4)" |
| | | }, |
| | | borderRadius: { |
| | | type: String |
| | | } |
| | | }, |
| | | watch: { |
| | | /** |
| | | * 监听type类型 |
| | | */ |
| | | type: { |
| | | handler: function(type) { |
| | | if (!this.config[type]) |
| | | return; |
| | | this[this.config[type]](true); |
| | | }, |
| | | immediate: true |
| | | }, |
| | | isDesktop: { |
| | | handler: function(newVal) { |
| | | if (!this.config[newVal]) |
| | | return; |
| | | this[this.config[this.type]](true); |
| | | }, |
| | | immediate: true |
| | | }, |
| | | /** |
| | | * 监听遮罩是否可点击 |
| | | * @param {Object} val |
| | | */ |
| | | maskClick: { |
| | | handler: function(val) { |
| | | this.mkclick = val; |
| | | }, |
| | | immediate: true |
| | | }, |
| | | isMaskClick: { |
| | | handler: function(val) { |
| | | this.mkclick = val; |
| | | }, |
| | | immediate: true |
| | | }, |
| | | // H5 下禁止底部滚动 |
| | | showPopup(show) { |
| | | } |
| | | }, |
| | | data() { |
| | | return { |
| | | duration: 300, |
| | | ani: [], |
| | | showPopup: false, |
| | | showTrans: false, |
| | | popupWidth: 0, |
| | | popupHeight: 0, |
| | | config: { |
| | | top: "top", |
| | | bottom: "bottom", |
| | | center: "center", |
| | | left: "left", |
| | | right: "right", |
| | | message: "top", |
| | | dialog: "center", |
| | | share: "bottom" |
| | | }, |
| | | maskClass: { |
| | | position: "fixed", |
| | | bottom: 0, |
| | | top: 0, |
| | | left: 0, |
| | | right: 0, |
| | | backgroundColor: "rgba(0, 0, 0, 0.4)" |
| | | }, |
| | | transClass: { |
| | | backgroundColor: "transparent", |
| | | borderRadius: this.borderRadius || "0", |
| | | position: "fixed", |
| | | left: 0, |
| | | right: 0 |
| | | }, |
| | | maskShow: true, |
| | | mkclick: true, |
| | | popupstyle: "top" |
| | | }; |
| | | }, |
| | | computed: { |
| | | getStyles() { |
| | | let res = { backgroundColor: this.bg }; |
| | | if (this.borderRadius || "0") { |
| | | res = Object.assign(res, { borderRadius: this.borderRadius }); |
| | | } |
| | | return res; |
| | | }, |
| | | isDesktop() { |
| | | return this.popupWidth >= 500 && this.popupHeight >= 500; |
| | | }, |
| | | bg() { |
| | | if (this.backgroundColor === "" || this.backgroundColor === "none") { |
| | | return "transparent"; |
| | | } |
| | | return this.backgroundColor; |
| | | } |
| | | }, |
| | | mounted() { |
| | | const fixSize = () => { |
| | | const { |
| | | windowWidth, |
| | | windowHeight, |
| | | windowTop, |
| | | safeArea, |
| | | screenHeight, |
| | | safeAreaInsets |
| | | } = common_vendor.index.getSystemInfoSync(); |
| | | this.popupWidth = windowWidth; |
| | | this.popupHeight = windowHeight + (windowTop || 0); |
| | | if (safeArea && this.safeArea) { |
| | | this.safeAreaInsets = screenHeight - safeArea.bottom; |
| | | } else { |
| | | this.safeAreaInsets = 0; |
| | | } |
| | | }; |
| | | fixSize(); |
| | | }, |
| | | // TODO vue3 |
| | | unmounted() { |
| | | this.setH5Visible(); |
| | | }, |
| | | activated() { |
| | | this.setH5Visible(!this.showPopup); |
| | | }, |
| | | deactivated() { |
| | | this.setH5Visible(true); |
| | | }, |
| | | created() { |
| | | if (this.isMaskClick === null && this.maskClick === null) { |
| | | this.mkclick = true; |
| | | } else { |
| | | this.mkclick = this.isMaskClick !== null ? this.isMaskClick : this.maskClick; |
| | | } |
| | | if (this.animation) { |
| | | this.duration = 300; |
| | | } else { |
| | | this.duration = 0; |
| | | } |
| | | this.messageChild = null; |
| | | this.clearPropagation = false; |
| | | this.maskClass.backgroundColor = this.maskBackgroundColor; |
| | | }, |
| | | methods: { |
| | | setH5Visible(visible = true) { |
| | | }, |
| | | /** |
| | | * 公用方法,不显示遮罩层 |
| | | */ |
| | | closeMask() { |
| | | this.maskShow = false; |
| | | }, |
| | | /** |
| | | * 公用方法,遮罩层禁止点击 |
| | | */ |
| | | disableMask() { |
| | | this.mkclick = false; |
| | | }, |
| | | // TODO nvue 取消冒泡 |
| | | clear(e) { |
| | | e.stopPropagation(); |
| | | this.clearPropagation = true; |
| | | }, |
| | | open(direction) { |
| | | if (this.showPopup) { |
| | | return; |
| | | } |
| | | let innerType = ["top", "center", "bottom", "left", "right", "message", "dialog", "share"]; |
| | | if (!(direction && innerType.indexOf(direction) !== -1)) { |
| | | direction = this.type; |
| | | } |
| | | if (!this.config[direction]) { |
| | | console.error("缺少类型:", direction); |
| | | return; |
| | | } |
| | | this[this.config[direction]](); |
| | | this.$emit("change", { |
| | | show: true, |
| | | type: direction |
| | | }); |
| | | }, |
| | | close(type) { |
| | | this.showTrans = false; |
| | | this.$emit("change", { |
| | | show: false, |
| | | type: this.type |
| | | }); |
| | | clearTimeout(this.timer); |
| | | this.timer = setTimeout(() => { |
| | | this.showPopup = false; |
| | | }, 300); |
| | | }, |
| | | // TODO 处理冒泡事件,头条的冒泡事件有问题 ,先这样兼容 |
| | | touchstart() { |
| | | this.clearPropagation = false; |
| | | }, |
| | | onTap() { |
| | | if (this.clearPropagation) { |
| | | this.clearPropagation = false; |
| | | return; |
| | | } |
| | | this.$emit("maskClick"); |
| | | if (!this.mkclick) |
| | | return; |
| | | this.close(); |
| | | }, |
| | | /** |
| | | * 顶部弹出样式处理 |
| | | */ |
| | | top(type) { |
| | | this.popupstyle = this.isDesktop ? "fixforpc-top" : "top"; |
| | | this.ani = ["slide-top"]; |
| | | this.transClass = { |
| | | position: "fixed", |
| | | left: 0, |
| | | right: 0, |
| | | backgroundColor: this.bg, |
| | | borderRadius: this.borderRadius || "0" |
| | | }; |
| | | if (type) |
| | | return; |
| | | this.showPopup = true; |
| | | this.showTrans = true; |
| | | this.$nextTick(() => { |
| | | if (this.messageChild && this.type === "message") { |
| | | this.messageChild.timerClose(); |
| | | } |
| | | }); |
| | | }, |
| | | /** |
| | | * 底部弹出样式处理 |
| | | */ |
| | | bottom(type) { |
| | | this.popupstyle = "bottom"; |
| | | this.ani = ["slide-bottom"]; |
| | | this.transClass = { |
| | | position: "fixed", |
| | | left: 0, |
| | | right: 0, |
| | | bottom: 0, |
| | | paddingBottom: this.safeAreaInsets + "px", |
| | | backgroundColor: this.bg, |
| | | borderRadius: this.borderRadius || "0" |
| | | }; |
| | | if (type) |
| | | return; |
| | | this.showPopup = true; |
| | | this.showTrans = true; |
| | | }, |
| | | /** |
| | | * 中间弹出样式处理 |
| | | */ |
| | | center(type) { |
| | | this.popupstyle = "center"; |
| | | this.ani = ["fade"]; |
| | | this.transClass = { |
| | | position: "fixed", |
| | | display: "flex", |
| | | flexDirection: "column", |
| | | bottom: 0, |
| | | left: 0, |
| | | right: 0, |
| | | top: 0, |
| | | justifyContent: "center", |
| | | alignItems: "center", |
| | | borderRadius: this.borderRadius || "0" |
| | | }; |
| | | if (type) |
| | | return; |
| | | this.showPopup = true; |
| | | this.showTrans = true; |
| | | }, |
| | | left(type) { |
| | | this.popupstyle = "left"; |
| | | this.ani = ["slide-left"]; |
| | | this.transClass = { |
| | | position: "fixed", |
| | | left: 0, |
| | | bottom: 0, |
| | | top: 0, |
| | | backgroundColor: this.bg, |
| | | borderRadius: this.borderRadius || "0", |
| | | display: "flex", |
| | | flexDirection: "column" |
| | | }; |
| | | if (type) |
| | | return; |
| | | this.showPopup = true; |
| | | this.showTrans = true; |
| | | }, |
| | | right(type) { |
| | | this.popupstyle = "right"; |
| | | this.ani = ["slide-right"]; |
| | | this.transClass = { |
| | | position: "fixed", |
| | | bottom: 0, |
| | | right: 0, |
| | | top: 0, |
| | | backgroundColor: this.bg, |
| | | borderRadius: this.borderRadius || "0", |
| | | display: "flex", |
| | | flexDirection: "column" |
| | | }; |
| | | if (type) |
| | | return; |
| | | this.showPopup = true; |
| | | this.showTrans = true; |
| | | } |
| | | } |
| | | }; |
| | | if (!Array) { |
| | | const _easycom_uni_transition2 = common_vendor.resolveComponent("uni-transition"); |
| | | _easycom_uni_transition2(); |
| | | } |
| | | const _easycom_uni_transition = () => "../uni-transition/uni-transition.js"; |
| | | if (!Math) { |
| | | _easycom_uni_transition(); |
| | | } |
| | | function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { |
| | | return common_vendor.e({ |
| | | a: $data.showPopup |
| | | }, $data.showPopup ? common_vendor.e({ |
| | | b: $data.maskShow |
| | | }, $data.maskShow ? { |
| | | c: common_vendor.o($options.onTap), |
| | | d: common_vendor.p({ |
| | | name: "mask", |
| | | ["mode-class"]: "fade", |
| | | styles: $data.maskClass, |
| | | duration: $data.duration, |
| | | show: $data.showTrans |
| | | }) |
| | | } : {}, { |
| | | e: common_vendor.s($options.getStyles), |
| | | f: common_vendor.n($data.popupstyle), |
| | | g: common_vendor.o((...args) => $options.clear && $options.clear(...args)), |
| | | h: common_vendor.o($options.onTap), |
| | | i: common_vendor.p({ |
| | | ["mode-class"]: $data.ani, |
| | | name: "content", |
| | | styles: $data.transClass, |
| | | duration: $data.duration, |
| | | show: $data.showTrans |
| | | }), |
| | | j: common_vendor.o((...args) => $options.touchstart && $options.touchstart(...args)), |
| | | k: common_vendor.n($data.popupstyle), |
| | | l: common_vendor.n($options.isDesktop ? "fixforpc-z-index" : "") |
| | | }) : {}); |
| | | } |
| | | const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]); |
| | | wx.createComponent(Component); |
对比新文件 |
| | |
| | | { |
| | | "component": true, |
| | | "usingComponents": { |
| | | "uni-transition": "../uni-transition/uni-transition" |
| | | } |
| | | } |
对比新文件 |
| | |
| | | <view wx:if="{{a}}" class="{{['uni-popup', k, l]}}"><view bindtouchstart="{{j}}"><uni-transition wx:if="{{b}}" key="1" bindclick="{{c}}" u-i="8c28e6d6-0" bind:__l="__l" u-p="{{d}}"/><uni-transition wx:if="{{i}}" u-s="{{['d']}}" key="2" bindclick="{{h}}" u-i="8c28e6d6-1" bind:__l="__l" u-p="{{i}}"><view style="{{e}}" class="{{['uni-popup__wrapper', f]}}" bindtap="{{g}}"><slot/></view></uni-transition></view></view> |
对比新文件 |
| | |
| | | /** |
| | | * 这里是uni-app内置的常用样式变量 |
| | | * |
| | | * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 |
| | | * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App |
| | | * |
| | | */ |
| | | /** |
| | | * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 |
| | | * |
| | | * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 |
| | | */ |
| | | /* 颜色变量 */ |
| | | /* 行为相关颜色 */ |
| | | /* 文字基本颜色 */ |
| | | /* 背景颜色 */ |
| | | /* 边框颜色 */ |
| | | /* 尺寸变量 */ |
| | | /* 文字尺寸 */ |
| | | /* 图片尺寸 */ |
| | | /* Border Radius */ |
| | | /* 水平间距 */ |
| | | /* 垂直间距 */ |
| | | /* 透明度 */ |
| | | /* 文章场景相关 */ |
| | | .uni-popup { |
| | | position: fixed; |
| | | z-index: 99; |
| | | } |
| | | .uni-popup.top, .uni-popup.left, .uni-popup.right { |
| | | top: 0; |
| | | } |
| | | .uni-popup .uni-popup__wrapper { |
| | | display: block; |
| | | position: relative; |
| | | /* iphonex 等安全区设置,底部安全区适配 */ |
| | | } |
| | | .uni-popup .uni-popup__wrapper.left, .uni-popup .uni-popup__wrapper.right { |
| | | padding-top: 0; |
| | | flex: 1; |
| | | } |
| | | .fixforpc-z-index { |
| | | z-index: 999; |
| | | } |
| | | .fixforpc-top { |
| | | top: 0; |
| | | } |
对比新文件 |
| | |
| | | "use strict"; |
| | | const common_vendor = require("../../../../../common/vendor.js"); |
| | | const _sfc_main = { |
| | | name: "uniTransition", |
| | | emits: ["click", "change"], |
| | | props: { |
| | | show: { |
| | | type: Boolean, |
| | | default: false |
| | | }, |
| | | modeClass: { |
| | | type: [Array, String], |
| | | default() { |
| | | return "fade"; |
| | | } |
| | | }, |
| | | duration: { |
| | | type: Number, |
| | | default: 300 |
| | | }, |
| | | styles: { |
| | | type: Object, |
| | | default() { |
| | | return {}; |
| | | } |
| | | }, |
| | | customClass: { |
| | | type: String, |
| | | default: "" |
| | | }, |
| | | onceRender: { |
| | | type: Boolean, |
| | | default: false |
| | | } |
| | | }, |
| | | data() { |
| | | return { |
| | | isShow: false, |
| | | transform: "", |
| | | opacity: 1, |
| | | animationData: {}, |
| | | durationTime: 300, |
| | | config: {} |
| | | }; |
| | | }, |
| | | watch: { |
| | | show: { |
| | | handler(newVal) { |
| | | if (newVal) { |
| | | this.open(); |
| | | } else { |
| | | if (this.isShow) { |
| | | this.close(); |
| | | } |
| | | } |
| | | }, |
| | | immediate: true |
| | | } |
| | | }, |
| | | computed: { |
| | | // 生成样式数据 |
| | | stylesObject() { |
| | | let styles = { |
| | | ...this.styles, |
| | | "transition-duration": this.duration / 1e3 + "s" |
| | | }; |
| | | let transform = ""; |
| | | for (let i in styles) { |
| | | let line = this.toLine(i); |
| | | transform += line + ":" + styles[i] + ";"; |
| | | } |
| | | return transform; |
| | | }, |
| | | // 初始化动画条件 |
| | | transformStyles() { |
| | | return "transform:" + this.transform + ";opacity:" + this.opacity + ";" + this.stylesObject; |
| | | } |
| | | }, |
| | | created() { |
| | | this.config = { |
| | | duration: this.duration, |
| | | timingFunction: "ease", |
| | | transformOrigin: "50% 50%", |
| | | delay: 0 |
| | | }; |
| | | this.durationTime = this.duration; |
| | | }, |
| | | methods: { |
| | | /** |
| | | * ref 触发 初始化动画 |
| | | */ |
| | | init(obj = {}) { |
| | | if (obj.duration) { |
| | | this.durationTime = obj.duration; |
| | | } |
| | | this.animation = common_vendor.createAnimation(Object.assign(this.config, obj), this); |
| | | }, |
| | | /** |
| | | * 点击组件触发回调 |
| | | */ |
| | | onClick() { |
| | | this.$emit("click", { |
| | | detail: this.isShow |
| | | }); |
| | | }, |
| | | /** |
| | | * ref 触发 动画分组 |
| | | * @param {Object} obj |
| | | */ |
| | | step(obj, config = {}) { |
| | | if (!this.animation) |
| | | return; |
| | | for (let i in obj) { |
| | | try { |
| | | if (typeof obj[i] === "object") { |
| | | this.animation[i](...obj[i]); |
| | | } else { |
| | | this.animation[i](obj[i]); |
| | | } |
| | | } catch (e) { |
| | | console.error(`方法 ${i} 不存在`); |
| | | } |
| | | } |
| | | this.animation.step(config); |
| | | return this; |
| | | }, |
| | | /** |
| | | * ref 触发 执行动画 |
| | | */ |
| | | run(fn) { |
| | | if (!this.animation) |
| | | return; |
| | | this.animation.run(fn); |
| | | }, |
| | | // 开始过度动画 |
| | | open() { |
| | | clearTimeout(this.timer); |
| | | this.transform = ""; |
| | | this.isShow = true; |
| | | let { opacity, transform } = this.styleInit(false); |
| | | if (typeof opacity !== "undefined") { |
| | | this.opacity = opacity; |
| | | } |
| | | this.transform = transform; |
| | | this.$nextTick(() => { |
| | | this.timer = setTimeout(() => { |
| | | this.animation = common_vendor.createAnimation(this.config, this); |
| | | this.tranfromInit(false).step(); |
| | | this.animation.run(); |
| | | this.$emit("change", { |
| | | detail: this.isShow |
| | | }); |
| | | }, 20); |
| | | }); |
| | | }, |
| | | // 关闭过度动画 |
| | | close(type) { |
| | | if (!this.animation) |
| | | return; |
| | | this.tranfromInit(true).step().run(() => { |
| | | this.isShow = false; |
| | | this.animationData = null; |
| | | this.animation = null; |
| | | let { opacity, transform } = this.styleInit(false); |
| | | this.opacity = opacity || 1; |
| | | this.transform = transform; |
| | | this.$emit("change", { |
| | | detail: this.isShow |
| | | }); |
| | | }); |
| | | }, |
| | | // 处理动画开始前的默认样式 |
| | | styleInit(type) { |
| | | let styles = { |
| | | transform: "" |
| | | }; |
| | | let buildStyle = (type2, mode) => { |
| | | if (mode === "fade") { |
| | | styles.opacity = this.animationType(type2)[mode]; |
| | | } else { |
| | | styles.transform += this.animationType(type2)[mode] + " "; |
| | | } |
| | | }; |
| | | if (typeof this.modeClass === "string") { |
| | | buildStyle(type, this.modeClass); |
| | | } else { |
| | | this.modeClass.forEach((mode) => { |
| | | buildStyle(type, mode); |
| | | }); |
| | | } |
| | | return styles; |
| | | }, |
| | | // 处理内置组合动画 |
| | | tranfromInit(type) { |
| | | let buildTranfrom = (type2, mode) => { |
| | | let aniNum = null; |
| | | if (mode === "fade") { |
| | | aniNum = type2 ? 0 : 1; |
| | | } else { |
| | | aniNum = type2 ? "-100%" : "0"; |
| | | if (mode === "zoom-in") { |
| | | aniNum = type2 ? 0.8 : 1; |
| | | } |
| | | if (mode === "zoom-out") { |
| | | aniNum = type2 ? 1.2 : 1; |
| | | } |
| | | if (mode === "slide-right") { |
| | | aniNum = type2 ? "100%" : "0"; |
| | | } |
| | | if (mode === "slide-bottom") { |
| | | aniNum = type2 ? "100%" : "0"; |
| | | } |
| | | } |
| | | this.animation[this.animationMode()[mode]](aniNum); |
| | | }; |
| | | if (typeof this.modeClass === "string") { |
| | | buildTranfrom(type, this.modeClass); |
| | | } else { |
| | | this.modeClass.forEach((mode) => { |
| | | buildTranfrom(type, mode); |
| | | }); |
| | | } |
| | | return this.animation; |
| | | }, |
| | | animationType(type) { |
| | | return { |
| | | fade: type ? 0 : 1, |
| | | "slide-top": `translateY(${type ? "0" : "-100%"})`, |
| | | "slide-right": `translateX(${type ? "0" : "100%"})`, |
| | | "slide-bottom": `translateY(${type ? "0" : "100%"})`, |
| | | "slide-left": `translateX(${type ? "0" : "-100%"})`, |
| | | "zoom-in": `scaleX(${type ? 1 : 0.8}) scaleY(${type ? 1 : 0.8})`, |
| | | "zoom-out": `scaleX(${type ? 1 : 1.2}) scaleY(${type ? 1 : 1.2})` |
| | | }; |
| | | }, |
| | | // 内置动画类型与实际动画对应字典 |
| | | animationMode() { |
| | | return { |
| | | fade: "opacity", |
| | | "slide-top": "translateY", |
| | | "slide-right": "translateX", |
| | | "slide-bottom": "translateY", |
| | | "slide-left": "translateX", |
| | | "zoom-in": "scale", |
| | | "zoom-out": "scale" |
| | | }; |
| | | }, |
| | | // 驼峰转中横线 |
| | | toLine(name) { |
| | | return name.replace(/([A-Z])/g, "-$1").toLowerCase(); |
| | | } |
| | | } |
| | | }; |
| | | function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { |
| | | return { |
| | | a: $data.isShow, |
| | | b: $data.animationData, |
| | | c: common_vendor.n($props.customClass), |
| | | d: common_vendor.s($options.transformStyles), |
| | | e: common_vendor.o((...args) => $options.onClick && $options.onClick(...args)) |
| | | }; |
| | | } |
| | | const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]); |
| | | wx.createComponent(Component); |
对比新文件 |
| | |
| | | { |
| | | "component": true, |
| | | "usingComponents": {} |
| | | } |
对比新文件 |
| | |
| | | <view hidden="{{!a}}" ref="ani" animation="{{b}}" class="{{c}}" style="{{d}}" bindtap="{{e}}"><slot></slot></view> |
对比新文件 |
| | |
| | | "use strict"; |
| | | const common_vendor = require("../../common/vendor.js"); |
| | | const _sfc_main = { |
| | | __name: "index", |
| | | setup(__props) { |
| | | const back = () => { |
| | | common_vendor.index.navigateTo({ |
| | | url: "/pages/login/index" |
| | | }); |
| | | }; |
| | | const capsuleHeight = common_vendor.ref(0); |
| | | common_vendor.onMounted(() => { |
| | | if (common_vendor.index.getMenuButtonBoundingClientRect) { |
| | | capsuleHeight.value = (common_vendor.index.getMenuButtonBoundingClientRect().top + common_vendor.index.getMenuButtonBoundingClientRect().height) * 2; |
| | | } |
| | | }); |
| | | const functionList = common_vendor.ref([ |
| | | { text: "余额", icon: "../../static/images/index/icon31.png", url: "/pages/login/index" }, |
| | | { text: "余额", icon: "../../static/images/index/icon32.png", url: "/pages/login/index" }, |
| | | { text: "余额", icon: "../../static/images/index/icon33.png", url: "/pages/login/index" }, |
| | | { text: "余额", icon: "../../static/images/index/icon34.png", url: "/pages/login/index" }, |
| | | { text: "余额", icon: "../../static/images/index/icon35.png", url: "/pages/login/index" }, |
| | | { text: "余额", icon: "../../static/images/index/icon36.png", url: "/pages/login/index" }, |
| | | { text: "余额", icon: "../../static/images/index/icon37.png", url: "/pages/login/index" }, |
| | | { text: "余额", icon: "../../static/images/index/icon38.png", url: "/pages/login/index" } |
| | | ]); |
| | | return (_ctx, _cache) => { |
| | | return { |
| | | a: capsuleHeight.value + "rpx", |
| | | b: common_vendor.f(functionList.value, (item, index, i0) => { |
| | | return { |
| | | a: item.icon, |
| | | b: common_vendor.t(item.text), |
| | | c: common_vendor.o(($event) => _ctx.navTo(item.url), index), |
| | | d: index |
| | | }; |
| | | }), |
| | | c: common_vendor.o(($event) => back()) |
| | | }; |
| | | }; |
| | | } |
| | | }; |
| | | const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-1cf27b2a"]]); |
| | | wx.createPage(MiniProgramPage); |
对比新文件 |
| | |
| | | { |
| | | "navigationStyle": "custom", |
| | | "usingComponents": {} |
| | | } |
对比新文件 |
| | |
| | | <view class="container data-v-1cf27b2a"><view class="content data-v-1cf27b2a"><view class="card-box data-v-1cf27b2a" style="{{'padding-top:' + a}}"><view class="card data-v-1cf27b2a"></view></view><view class="function-box1 data-v-1cf27b2a"><view class="box1-bg data-v-1cf27b2a"></view><view class="box1-bg data-v-1cf27b2a"></view><view class="box1-bg data-v-1cf27b2a"></view></view><view class="function-box2 data-v-1cf27b2a"><view class="box2-title data-v-1cf27b2a"><text class="data-v-1cf27b2a">功能列表</text></view><view class="box2-content data-v-1cf27b2a"><block wx:for="{{b}}" wx:for-item="item" wx:key="d"><view class="box2-item data-v-1cf27b2a" bindtap="{{item.c}}"><image class="data-v-1cf27b2a" src="{{item.a}}" alt=""></image><view class="box2-item-text data-v-1cf27b2a">{{item.b}}</view></view></block></view></view></view><button class="data-v-1cf27b2a" bindtap="{{c}}"></button></view> |
对比新文件 |
| | |
| | | /** |
| | | * 这里是uni-app内置的常用样式变量 |
| | | * |
| | | * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 |
| | | * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App |
| | | * |
| | | */ |
| | | /** |
| | | * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 |
| | | * |
| | | * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 |
| | | */ |
| | | /* 颜色变量 */ |
| | | /* 行为相关颜色 */ |
| | | /* 文字基本颜色 */ |
| | | /* 背景颜色 */ |
| | | /* 边框颜色 */ |
| | | /* 尺寸变量 */ |
| | | /* 文字尺寸 */ |
| | | /* 图片尺寸 */ |
| | | /* Border Radius */ |
| | | /* 水平间距 */ |
| | | /* 垂直间距 */ |
| | | /* 透明度 */ |
| | | /* 文章场景相关 */ |
| | | .container.data-v-1cf27b2a { |
| | | width: 100%; |
| | | height: 100vh; |
| | | overflow: scroll; |
| | | } |
| | | .container .content.data-v-1cf27b2a { |
| | | width: 100%; |
| | | height: 100vh; |
| | | background: #F6F6F6; |
| | | } |
| | | .card-box.data-v-1cf27b2a { |
| | | width: 100%; |
| | | height: auto; |
| | | box-sizing: border-box; |
| | | padding: 0 32rpx; |
| | | background: linear-gradient(to bottom, #5EA1FA, #D2F2FE); |
| | | } |
| | | .card-box .card.data-v-1cf27b2a { |
| | | width: 100%; |
| | | height: 304rpx; |
| | | background-image: url("data:image/png;base64,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"); |
| | | background-repeat: no-repeat; |
| | | background-size: 100%; |
| | | } |
| | | .function-box1.data-v-1cf27b2a { |
| | | width: 100%; |
| | | box-sizing: border-box; |
| | | height: 264rpx; |
| | | padding: 32rpx; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | } |
| | | .function-box1 .box1-bg.data-v-1cf27b2a { |
| | | width: 212rpx; |
| | | height: 200rpx; |
| | | border-radius: 24rpx; |
| | | background: #fff; |
| | | box-shadow: 0 0 12rpx 2rpx rgba(13, 118, 255, 0.16); |
| | | } |
| | | .function-box2.data-v-1cf27b2a { |
| | | width: 100%; |
| | | box-sizing: border-box; |
| | | height: 460rpx; |
| | | padding: 0 32rpx 32rpx; |
| | | } |
| | | .function-box2 .box2-title.data-v-1cf27b2a { |
| | | width: 100%; |
| | | font-weight: 300; |
| | | font-size: 32rpx; |
| | | color: #000000; |
| | | text-align: left; |
| | | margin-bottom: 10rpx; |
| | | margin-left: 30rpx; |
| | | } |
| | | .function-box2 .box2-content.data-v-1cf27b2a { |
| | | box-sizing: border-box; |
| | | padding: 30rpx 50rpx; |
| | | width: 686rpx; |
| | | height: 374rpx; |
| | | background: #fff; |
| | | border-radius: 24rpx; |
| | | box-shadow: 0 0 12rpx 2rpx rgba(0, 0, 0, 0.1); |
| | | display: flex; |
| | | flex-wrap: wrap; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | } |
| | | .function-box2 .box2-content .box2-item.data-v-1cf27b2a { |
| | | width: 120rpx; |
| | | height: 130rpx; |
| | | } |
| | | .function-box2 .box2-content .box2-item image.data-v-1cf27b2a { |
| | | width: 90rpx; |
| | | height: 90rpx; |
| | | margin: 0 auto; |
| | | } |
| | | .function-box2 .box2-content .box2-item .box2-item-text.data-v-1cf27b2a { |
| | | width: 100%; |
| | | height: 40rpx; |
| | | font-weight: 300; |
| | | font-size: 28rpx; |
| | | color: #000000; |
| | | text-align: center; |
| | | } |
| | | button.data-v-1cf27b2a { |
| | | width: 100rpx; |
| | | height: 50rpx; |
| | | } |
对比新文件 |
| | |
| | | "use strict"; |
| | | const common_vendor = require("../../common/vendor.js"); |
| | | const common_assets = require("../../common/assets.js"); |
| | | if (!Array) { |
| | | const _easycom_uni_popup2 = common_vendor.resolveComponent("uni-popup"); |
| | | _easycom_uni_popup2(); |
| | | } |
| | | const _easycom_uni_popup = () => "../../node-modules/@dcloudio/uni-ui/lib/uni-popup/uni-popup.js"; |
| | | if (!Math) { |
| | | _easycom_uni_popup(); |
| | | } |
| | | const _sfc_main = { |
| | | __name: "index", |
| | | setup(__props) { |
| | | let popupRef = common_vendor.ref(null); |
| | | const login = () => { |
| | | common_vendor.index.navigateTo({ |
| | | url: "/pages/index/index" |
| | | }); |
| | | console.log("login1"); |
| | | }; |
| | | const wxLoginPopup = () => { |
| | | popupRef.value.open("bottom"); |
| | | }; |
| | | const wxLoginFn = () => { |
| | | console.log("login2"); |
| | | popupRef.value.close("bottom"); |
| | | }; |
| | | return (_ctx, _cache) => { |
| | | return { |
| | | a: common_vendor.o(($event) => login()), |
| | | b: common_assets._imports_0, |
| | | c: common_vendor.o(($event) => wxLoginPopup()), |
| | | d: common_assets._imports_1, |
| | | e: common_vendor.o(($event) => common_vendor.unref(popupRef).close("bottom")), |
| | | f: common_vendor.o(($event) => wxLoginFn()), |
| | | g: common_vendor.sr(popupRef, "169f96b2-0", { |
| | | "k": "popupRef" |
| | | }), |
| | | h: common_vendor.p({ |
| | | ["background-color"]: "#fff" |
| | | }) |
| | | }; |
| | | }; |
| | | } |
| | | }; |
| | | wx.createPage(_sfc_main); |
对比新文件 |
| | |
| | | { |
| | | "navigationStyle": "custom", |
| | | "usingComponents": { |
| | | "uni-popup": "../../node-modules/@dcloudio/uni-ui/lib/uni-popup/uni-popup" |
| | | } |
| | | } |
对比新文件 |
| | |
| | | <view class="container"><view class="content"><view class="title"><view class="text1">欢迎登录</view><view class="text2">Welcome to login</view></view><view class="form"><view class="form-input"><input type="text" placeholder="输入账号"></input></view><view class="form-input"><input password type="text" placeholder="输入密码"></input></view></view><view class="login-btn"><button bindtap="{{a}}">登录</button></view><view class="bottom"><view class="divide"><view class="line"></view><view class="divide-text">第三方账号登录</view><view class="line"></view></view><view class="other-login"><image src="{{b}}" alt="" bindtap="{{c}}"/></view></view></view><uni-popup wx:if="{{h}}" class="r" u-s="{{['d']}}" u-r="popupRef" u-i="169f96b2-0" bind:__l="__l" u-p="{{h}}"><view class="popup-content"><text class="popup-title">微信登录</text><view class="hr"></view><view class="img-box"><image src="{{d}}" alt="" class="img"/></view><view class="info-box"><view class="info-text1">青源直饮水平台申请获取以下权限:</view><view class="hr2"></view><view class="info-text2">· 获得你的公开信息(昵称、头像、地区及性别)</view><view class="button-box"><button class="button1" bindtap="{{e}}">取消</button><button class="button2" bindtap="{{f}}">确定</button></view></view></view></uni-popup></view> |
对比新文件 |
| | |
| | | /** |
| | | * 这里是uni-app内置的常用样式变量 |
| | | * |
| | | * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 |
| | | * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App |
| | | * |
| | | */ |
| | | /** |
| | | * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 |
| | | * |
| | | * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 |
| | | */ |
| | | /* 颜色变量 */ |
| | | /* 行为相关颜色 */ |
| | | /* 文字基本颜色 */ |
| | | /* 背景颜色 */ |
| | | /* 边框颜色 */ |
| | | /* 尺寸变量 */ |
| | | /* 文字尺寸 */ |
| | | /* 图片尺寸 */ |
| | | /* Border Radius */ |
| | | /* 水平间距 */ |
| | | /* 垂直间距 */ |
| | | /* 透明度 */ |
| | | /* 文章场景相关 */ |
| | | page { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | .container { |
| | | width: 100%; |
| | | height: 100%; |
| | | background-image: url("../../static/images/login/bg2.png"); |
| | | background-size: 100%; |
| | | background-repeat: no-repeat; |
| | | position: relative; |
| | | } |
| | | .container .content { |
| | | position: absolute; |
| | | width: 680rpx; |
| | | height: 1080rpx; |
| | | top: 22%; |
| | | left: calc(50% - 340rpx); |
| | | background-image: url("data:image/png;base64,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"); |
| | | background-repeat: no-repeat; |
| | | background-size: 100%; |
| | | } |
| | | .container .content .title { |
| | | width: 100%; |
| | | height: 180rpx; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: flex-start; |
| | | padding: 9% 0 0 13%; |
| | | box-sizing: border-box; |
| | | } |
| | | .container .content .title .text1 { |
| | | width: 250rpx; |
| | | font-weight: 500; |
| | | font-size: 56rpx; |
| | | color: #345DB1; |
| | | text-align: left; |
| | | margin-left: 14rpx; |
| | | margin-bottom: 20rpx; |
| | | } |
| | | .container .content .title .text2 { |
| | | width: 500rpx; |
| | | font-weight: 400; |
| | | font-size: 36rpx; |
| | | color: #9AB6DD; |
| | | text-align: left; |
| | | } |
| | | .container .content .form { |
| | | width: 100%; |
| | | height: 260rpx; |
| | | margin-top: 125rpx; |
| | | /* background-color: #345DB1; */ |
| | | box-sizing: border-box; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: space-between; |
| | | } |
| | | .container .content .form .form-input { |
| | | width: 582rpx; |
| | | height: 100rpx; |
| | | background-image: url("data:image/png;base64,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"); |
| | | background-repeat: no-repeat; |
| | | background-size: 100%; |
| | | background-position: center; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: flex-start; |
| | | margin: 0 auto; |
| | | } |
| | | .container .content .form .form-input .uni-input-placeholder { |
| | | color: #9DC4E8; |
| | | } |
| | | .container .content .form .form-input input { |
| | | width: 80%; |
| | | margin-left: 60rpx; |
| | | font-weight: 400; |
| | | font-size: 32rpx; |
| | | text-align: left; |
| | | color: #2b4e82; |
| | | } |
| | | .container .content .login-btn { |
| | | width: 530rpx; |
| | | height: 100rpx; |
| | | margin: 80rpx auto 60rpx; |
| | | } |
| | | .container .content .login-btn button { |
| | | background: linear-gradient(to right, #51C9F6, #4E9BFF); |
| | | font-weight: 500; |
| | | font-size: 36rpx; |
| | | color: #FFFFFF; |
| | | border-radius: 20rpx; |
| | | } |
| | | .container .content .bottom { |
| | | width: 100%; |
| | | height: 180rpx; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | } |
| | | .container .content .bottom .divide { |
| | | box-sizing: border-box; |
| | | width: 100%; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | padding: 0 85rpx; |
| | | /* background: #446f52; */ |
| | | } |
| | | .container .content .bottom .divide .line { |
| | | width: 125rpx; |
| | | height: 2rpx; |
| | | background: #959595; |
| | | } |
| | | .container .content .bottom .divide .divide-text { |
| | | font-weight: 600; |
| | | font-size: 28rpx; |
| | | color: #B9B9B9; |
| | | text-align: center; |
| | | } |
| | | .container .content .bottom .other-login { |
| | | box-sizing: border-box; |
| | | width: 100%; |
| | | height: 100rpx; |
| | | /* background: #5d7682; */ |
| | | padding: 0 90rpx; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | } |
| | | .container .content .bottom .other-login img { |
| | | width: 76rpx; |
| | | height: 76rpx; |
| | | /* background: #345DB1; */ |
| | | } |
| | | .container .popup-content { |
| | | height: 560rpx; |
| | | position: relative; |
| | | z-index: 1000; |
| | | } |
| | | .container .popup-content .popup-title { |
| | | width: 100%; |
| | | display: block; |
| | | text-align: center; |
| | | margin: 15rpx 0; |
| | | font-weight: 600; |
| | | font-size: 36rpx; |
| | | } |
| | | .container .popup-content .hr { |
| | | width: 100%; |
| | | height: 2rpx; |
| | | background: #e2e2e2; |
| | | } |
| | | .container .popup-content .img-box { |
| | | width: 65rpx; |
| | | height: 65rpx; |
| | | margin: 40rpx auto 30rpx; |
| | | border: 1rpx solid #e2e2e2; |
| | | border-radius: 50%; |
| | | padding: 15rpx; |
| | | } |
| | | .container .popup-content .img-box .img { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | .container .popup-content .info-box { |
| | | width: 100%; |
| | | padding: 0 80rpx; |
| | | box-sizing: border-box; |
| | | } |
| | | .container .popup-content .info-box .hr2 { |
| | | width: 100%; |
| | | height: 2rpx; |
| | | background: #e2e2e2; |
| | | margin: 20rpx 0; |
| | | } |
| | | .container .popup-content .info-box .info-text2 { |
| | | font-size: 26rpx; |
| | | color: #767676; |
| | | } |
| | | .container .popup-content .button-box { |
| | | display: flex; |
| | | margin-top: 20rpx; |
| | | } |
| | | .container .popup-content .button-box button { |
| | | width: 230rpx; |
| | | height: 80rpx; |
| | | line-height: 80rpx; |
| | | border: none; |
| | | box-shadow: none; |
| | | margin-top: 30rpx; |
| | | } |
| | | .container .popup-content .button-box button::after { |
| | | border: none !important; |
| | | } |
| | | .container .popup-content .button-box .button1 { |
| | | background-color: #F0F0F0; |
| | | color: #333333; |
| | | } |
| | | .container .popup-content .button-box .button2 { |
| | | background-color: #06BF5E; |
| | | color: #ffffff; |
| | | } |
对比新文件 |
| | |
| | | { |
| | | "description": "项目配置文件。", |
| | | "packOptions": { |
| | | "ignore": [], |
| | | "include": [] |
| | | }, |
| | | "setting": { |
| | | "urlCheck": false, |
| | | "es6": true, |
| | | "postcss": false, |
| | | "minified": false, |
| | | "newFeature": true, |
| | | "bigPackageSizeSupport": true, |
| | | "babelSetting": { |
| | | "ignore": [], |
| | | "disablePlugins": [], |
| | | "outputPath": "" |
| | | } |
| | | }, |
| | | "compileType": "miniprogram", |
| | | "libVersion": "3.3.5", |
| | | "appid": "touristappid", |
| | | "projectname": "water-drinking-uniapp", |
| | | "condition": {}, |
| | | "editorSetting": { |
| | | "tabIndent": "insertSpaces", |
| | | "tabSize": 2 |
| | | } |
| | | } |
对比新文件 |
| | |
| | | { |
| | | "description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html", |
| | | "projectname": "water-drinking-uniapp", |
| | | "setting": { |
| | | "compileHotReLoad": true |
| | | } |
| | | } |