Commit 5cb43fa7 by yuzhenWang

Merge branch 'dev' into 'feature-20260203-解决外部跳转页面登录问题'

Dev

See merge request !83
parents a179a568 367db91a
...@@ -460,4 +460,7 @@ export default { ...@@ -460,4 +460,7 @@ export default {
getCardStats(data) { getCardStats(data) {
return request(`${apiURL}/business-card/stats/${data.cardId}?userId=${data.userId}`, 'GET') return request(`${apiURL}/business-card/stats/${data.cardId}?userId=${data.userId}`, 'GET')
}, },
dealerCouponCardList(params) {
return request(`${sfpUrl}/dealerCoupon/inventory/list/page`, 'POST', params)
},
} }
...@@ -116,10 +116,13 @@ ...@@ -116,10 +116,13 @@
<script setup lang="ts"> <script setup lang="ts">
// ================== IMPORTS ================== // ================== IMPORTS ==================
import { ref, computed, onMounted, onUnmounted } from 'vue'; import { ref, computed, onMounted, onUnmounted } from 'vue';
import * as pdfjsLib from 'pdfjs-dist/build/pdf'; // import * as pdfjsLib from 'pdfjs-dist/build/pdf';
// 👇 关键:静态导入 worker(Vite 语法) // 👇 关键:静态导入 worker(Vite 语法)
import pdfjsWorker from 'pdfjs-dist/build/pdf.worker?url'; // import pdfjsWorker from 'pdfjs-dist/build/pdf.worker?url';
import * as pdfjsLib from 'pdfjs-dist/es5/build/pdf';
import pdfjsWorker from 'pdfjs-dist/es5/build/pdf.worker.js?url';
// ================== PROPS ================== // ================== PROPS ==================
interface PdfInfo { interface PdfInfo {
......
...@@ -35,8 +35,6 @@ ...@@ -35,8 +35,6 @@
<title>银盾家办</title> <title>银盾家办</title>
<link rel="stylesheet" href="./static/font/iconfont.css"> <link rel="stylesheet" href="./static/font/iconfont.css">
<link rel="shortcut icon" href="./static/suplogo.ico"> <link rel="shortcut icon" href="./static/suplogo.ico">
<script src="/static/uni.webview.1.5.7.js"></script>
</head> </head>
<body> <body>
<div id="app"> <div id="app">
...@@ -44,7 +42,7 @@ ...@@ -44,7 +42,7 @@
</div> </div>
<script type="module" src="/main.js"></script> <script type="module" src="/main.js"></script>
<!-- uni 的 SDK,必须引用。 --> <!-- uni 的 SDK,必须引用。 -->
<script type="text/javascript" src="./static/uni.webview.1.5.4.js"></script> <script type="text/javascript" src="/static/uni.webview.1.5.4.js"></script>
<script type="text/javascript"> <script type="text/javascript">
// 验证脚本是否加载成功(调试关键:控制台打印 webViewJs 确认) // 验证脚本是否加载成功(调试关键:控制台打印 webViewJs 确认)
const webViewJs = window.uni?.webView; const webViewJs = window.uni?.webView;
......
<template>
<view class="container" :style="{paddingTop:paddingTop}">
<!-- #ifndef H5 -->
<CustomNavbar title="卡券使用记录" />
<!-- #endif -->
<view class="moduleBox" style="margin-top: 20rpx;">
<view class="module-content">
<view class="moudleHeader">
<view class="headerLeft">
<text class="bigTxt">已用卡券</text>
<text class="smallTxt">共有{{totalElements}}</text>
</view>
<!-- <view class="headerRight">
<text class="useTxt">使用记录 <text class="iconfont icon-youjiantou "></text> </text>
</view> -->
</view>
<view class="moudleItem" v-for="(item,index) in alreadyList" :key="index">
<view class="itemTop">
<view class="itemL">
<view class="productName">
{{item.cardName}}
</view>
<view class="timeTxt">
激活时间:{{item.activeTime}}
</view>
</view>
<view class="itemR">
{{item.price || '--'}}
</view>
</view>
<view class="itemBottom">
激活手机号:{{item.recipientMobile?item.recipientMobile :'--'}}
</view>
</view>
<view class="moreTxt">
<!-- 点击更多的时候要请求接口拿取分页数据 -->
<text class="useTxt" @click="getMore" v-if="alreadyList.length < totalElements">更多 <text class="iconfont icon-xiala "></text> </text>
<text class="useTxt" v-if="alreadyList.length == totalElements">数据已加载完 </text>
</view>
</view>
</view>
</view>
</template>
<script setup>
import { onLoad, onShow } from '@dcloudio/uni-app'
import { ref, onMounted, nextTick } from 'vue'
import api from '@/util/api'
import commonHeader from '@/components/commonHeader/commonHeader.vue'
import dataHandling from '@/util/dataHandling'
import * as environment from '@/environments/environment'
import CustomNavbar from '@/components/CustomNavbar/CustomNavbar.vue'
import { useSafeArea } from '@/mixins/safeAreaMixin'
const { paddingTop } = useSafeArea()
const paginationInfo = ref({
"number": 1,
"size": 10,
})
const totalElements = ref()//总条数
let alreadyList = ref([])
let dealerInfo = ref({})
onMounted(() => {
})
onLoad(() => {
// getList(paginationInfo.value)
// initShare()
dataHandling.pocessTracking(null, '点击', '进入我的卡券', '进入我的卡券', '2', '0');
})
const initShare = () => {
let name = uni.getStorageSync('hoservice_name')
let shareData = {
title: '邀请您体验金融工具',
desc: `${name}邀请您免费使用金融工具`,
imgUrl: `${environment.baseURL}/ydMall/static/img/share.png`,
// path: '/myPackageA/rights/rightsActive',
link: `${environment.baseURL}/ydMall/#/myPackageA/financial/toolsList?orderFlag=3`
}
dataHandling.wxJsSdkConfig(shareData, '金融工具')
}
// 分页获取卡券数据
const getList = (paginationInfo) => {
uni.showLoading({
title: '加载中...'
})
let obj = {
"paginationInfo" : paginationInfo,
"dealerId": dealerInfo.value.id,
// "dealerId": JSON.parse(JSON.stringify(uni.getStorageSync('hoservice_userId'))), //经销商ID(必填)
"status": 3 //卡券状态: 0-未使用 1-已赠送 2-已领取 3-已激活 4-已过期/失活
}
api.dealerCouponCardList(obj).then(res => {
uni.hideLoading()
if (res.success) {
alreadyList.value = alreadyList.value.concat(res.data.list)
totalElements.value = res.data.paginationInfo.totalElements
} else {
dataHandling.showToast(res['message'])
}
})
}
const getMore = ()=>{
if(alreadyList.value.length < totalElements.value){
paginationInfo.value.number += 1
paginationInfo.value.size = 10
getList(paginationInfo.value)
}
}
onShow(()=>{
alreadyList.value = []
paginationInfo.value = {
"number": 1,
"size": 10,
}
dealerInfo.value = JSON.parse(JSON.stringify(uni.getStorageSync('dealerInfo')))
getList(paginationInfo.value)
})
</script>
<style lang="scss" scoped>
@import '../../static/css/variable.scss';
.container {
box-sizing: border-box;
background-color: rgba(235, 239, 247, 1);
.moduleBox {
box-sizing: border-box;
/* #ifdef H5 */
margin-top: 30rpx;
/* #endif */
/* #ifdef MP-WEIXIN */
// margin-top: 135rpx;
/* #endif */
padding: 0 20rpx;
.module-content {
background-color: #fff;
margin-bottom: 20rpx;
padding: 20rpx 15rpx;
border-radius: 10rpx;
}
.moudleHeader {
@include flex(center, space-between);
margin-bottom: 20rpx;
.headerLeft {
.bigTxt {
font-size: 32rpx;
}
.smallTxt {
margin-left: 5rpx;
font-size: 26rpx;
color: $system-auxiliary-deepgray;
}
}
.headerRight {
.useTxt {
font-size: 26rpx;
color: $system-auxiliary-deepgray;
}
.icon-youjiantou {
font-size: 28rpx;
color: $system-auxiliary-deepgray;
}
}
}
.moudleItem {
background-color: rgba(206, 14, 45,.05);
padding: 30rpx 20rpx;
border-radius: 10rpx;
margin-bottom: 20rpx;
.itemTop {
@include flex(center, space-between);
margin-bottom: 10rpx;
.productName {
margin-bottom: 10rpx;
font-size: 32rpx;
max-width: 400rpx;
/* 关键:单行省略号 */
white-space: nowrap;
/* 不换行 */
overflow: hidden;
/* 隐藏溢出内容 */
text-overflow: ellipsis;
/* 溢出部分用省略号表示 */
}
.timeTxt {
font-size: 26rpx;
color: $system-auxiliary-deepgray;
}
.itemR {
font-size: 28rpx;
}
}
.itemBottom {
border-top: 1px solid $system-main-color4;
font-size: 30rpx;
color: $system-main-color;
padding-top: 10rpx;
margin-top: 15rpx;
position: relative;
&::before {
content: '';
width: 22rpx;
height: 22rpx;
border-radius: 50%;
position: absolute;
left: -5%;
top: -14%;
background-color: #fff;
}
&::after {
content: '';
width: 22rpx;
height: 22rpx;
border-radius: 50%;
position: absolute;
right: -5%;
top: -14%;
background-color: #fff;
}
}
}
.moreTxt{
@include flex(center, center);
color: $system-auxiliary-deepgray;
.useTxt{
font-size: 28rpx;
}
.icon-xiala{
font-size: 26rpx;
margin-left: 5rpx;
}
}
}
}
</style>
\ No newline at end of file
<template>
<view class="container">
<!-- #ifndef H5 -->
<CustomNavbar title="我的卡券" />
<!-- #endif -->
<view class="moduleBox" style="margin-top: 20rpx;">
<view class="module-content">
<view class="moudleHeader">
<view class="headerLeft">
<text class="bigTxt">我的卡券</text>
<text class="smallTxt">共有{{totalElements}}</text>
</view>
<view class="headerRight" @click="viewUseRecord">
<text class="useTxt">使用记录 <text class="iconfont icon-youjiantou "></text> </text>
</view>
</view>
<view class="moudleItem" v-for="(item,index) in moduleList" :key="index">
<view class="itemTop">
<view class="itemL">
<view class="productName">
{{item.cardName}}
</view>
<view class="timeTxt">
有效期:{{item.validEndTime}}
</view>
</view>
<view class="itemR">
{{item.price || '--'}}
</view>
</view>
<view class="itemBottom">
权益码:{{item.redeemCode}}
</view>
</view>
<view class="moreTxt">
<!-- 点击更多的时候要请求接口拿取分页数据 -->
<text class="useTxt" @click="getMore" v-if="moduleList.length < totalElements">更多 <text class="iconfont icon-xiala "></text> </text>
<text class="useTxt" v-if="moduleList.length == totalElements">数据已加载完 </text>
</view>
</view>
</view>
</view>
</template>
<script setup>
import { onLoad, onShow } from '@dcloudio/uni-app'
import { ref, onMounted, nextTick } from 'vue'
import api from "@/api/api";
import dataHandling from '@/util/dataHandling'
import * as environment from '@/environments/environment'
const paginationInfo = ref({
"number": 1,
"size": 10,
})
const totalElements = ref()//总条数
let moduleList = ref([])
let dealerId = ref()
const viewUseRecord = ()=>{
uni.navigateTo({
url:'/myPackageA/ticket/alreadyUsed'
})
}
onMounted(() => {
})
onLoad(() => {
// dataHandling.pocessTracking(null, '点击', '进入我的卡券', '进入我的卡券', '2', '0');
})
// 分页获取卡券数据
const getList = (paginationInfo) => {
uni.showLoading({
title: '加载中...'
})
let obj = {
"paginationInfo" : paginationInfo,
"dealerId": dealerId.value,
// "dealerId": JSON.parse(JSON.stringify(uni.getStorageSync('hoservice_userId'))), //经销商ID(必填)
"status": 0 //卡券状态: 0-未使用 1-已赠送 2-已领取 3-已激活 4-已过期/失活
}
api.dealerCouponCardList(obj).then(res => {
uni.hideLoading()
if (res.success) {
moduleList.value = moduleList.value.concat(res.data.list)
totalElements.value = res.data.paginationInfo.totalElements
} else {
// uni.showToast({
// title:res['message']
// })
}
})
}
const getMore = ()=>{
if(moduleList.value.length < totalElements.value){
paginationInfo.value.number += 1
paginationInfo.value.size = 10
getList(paginationInfo.value)
}
}
onShow(()=>{
moduleList.value = []
paginationInfo.value = {
"number": 1,
"size": 10,
}
dealerId.value = JSON.parse(JSON.stringify(uni.getStorageSync('cffp_userInfo'))) ? JSON.parse(JSON.stringify(uni.getStorageSync('cffp_userInfo'))).dealerId :''
getList(paginationInfo.value)
})
</script>
<style lang="scss" scoped>
@import '@/uni.scss';
.container {
box-sizing: border-box;
background-color: rgba(235, 239, 247, 1);
padding-top:30rpx;
.moduleBox {
box-sizing: border-box;
/* #ifdef H5 */
margin-top: 30rpx;
/* #endif */
/* #ifdef MP-WEIXIN */
// margin-top: 135rpx;
/* #endif */
padding: 0 20rpx;
.module-content {
background-color: #fff;
margin-bottom: 20rpx;
padding: 20rpx 15rpx;
border-radius: 10rpx;
}
.moudleHeader {
@include flex(center, space-between);
margin-bottom: 20rpx;
.headerLeft {
.bigTxt {
font-size: 32rpx;
}
.smallTxt {
margin-left: 5rpx;
font-size: 26rpx;
color: $system-auxiliary-deepgray;
}
}
.headerRight {
.useTxt {
font-size: 26rpx;
color: $system-auxiliary-deepgray;
}
.icon-youjiantou {
font-size: 28rpx;
color: $system-auxiliary-deepgray;
}
}
}
.moudleItem {
background-color: rgba(206, 14, 45,.05);
padding: 30rpx 20rpx;
border-radius: 10rpx;
margin-bottom: 20rpx;
.itemTop {
@include flex(center, space-between);
margin-bottom: 10rpx;
.productName {
margin-bottom: 10rpx;
font-size: 32rpx;
max-width: 400rpx;
/* 关键:单行省略号 */
white-space: nowrap;
/* 不换行 */
overflow: hidden;
/* 隐藏溢出内容 */
text-overflow: ellipsis;
/* 溢出部分用省略号表示 */
}
.timeTxt {
font-size: 26rpx;
color: $system-auxiliary-deepgray;
}
.itemR {
font-size: 28rpx;
}
}
.itemBottom {
border-top: 1px solid $system-main-color4;
font-size: 34rpx;
color: $system-main-color;
padding-top: 10rpx;
margin-top: 15rpx;
position: relative;
&::before {
content: '';
width: 22rpx;
height: 22rpx;
border-radius: 50%;
position: absolute;
left: -5%;
top: -14%;
background-color: #fff;
}
&::after {
content: '';
width: 22rpx;
height: 22rpx;
border-radius: 50%;
position: absolute;
right: -5%;
top: -14%;
background-color: #fff;
}
}
}
.moreTxt{
@include flex(center, center);
color: $system-auxiliary-deepgray;
.useTxt{
font-size: 28rpx;
}
.icon-xiala{
font-size: 26rpx;
margin-left: 5rpx;
}
}
}
}
</style>
\ No newline at end of file
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
"mp-painter": "^1.0.1", "mp-painter": "^1.0.1",
"nanoid": "^4.0.0", "nanoid": "^4.0.0",
"pdf.js": "^0.1.0", "pdf.js": "^0.1.0",
"pdfjs-dist": "^3.11.174", "pdfjs-dist": "^2.7.570",
"qrcode": "^1.5.4", "qrcode": "^1.5.4",
"qrcodejs2": "^0.0.2", "qrcodejs2": "^0.0.2",
"uqrcodejs": "^4.0.7", "uqrcodejs": "^4.0.7",
......
...@@ -620,6 +620,20 @@ ...@@ -620,6 +620,20 @@
{ {
"navigationBarTitleText" : "我的名片" "navigationBarTitleText" : "我的名片"
} }
},
{
"path" : "ticket/unUsed",
"style" :
{
"navigationBarTitleText" : "我的卡券"
}
},
{
"path" : "ticket/alreadyUsed",
"style" :
{
"navigationBarTitleText" : "使用记录"
}
} }
] ]
......
...@@ -54,7 +54,7 @@ ...@@ -54,7 +54,7 @@
</view> </view>
</view> </view>
<!-- 不是合伙人的角色可以看名片 v-if="customerBasicInfo.userIdentity&&customerBasicInfo.userIdentity!=='PARTNER'" --> <!-- 不是合伙人的角色可以看名片 v-if="customerBasicInfo.userIdentity&&customerBasicInfo.userIdentity!=='PARTNER'" -->
<view class="infoBody" v-if="customerBasicInfo.userIdentity&&customerBasicInfo.userIdentity!=='PARTNER'" <!-- <view class="infoBody" v-if="customerBasicInfo.userIdentity&&customerBasicInfo.userIdentity!=='PARTNER'"
style="margin-top: 10rpx;" @click="businessCard()"> style="margin-top: 10rpx;" @click="businessCard()">
<view class=""> <view class="">
我的名片 我的名片
...@@ -62,7 +62,7 @@ ...@@ -62,7 +62,7 @@
<view class=""> <view class="">
<view class="iconfont icon-youjiantou iconColor"></view> <view class="iconfont icon-youjiantou iconColor"></view>
</view> </view>
</view> </view> -->
<view class="kuaiBox" v-for="item in mainMenuLists" :key="item.id"> <view class="kuaiBox" v-for="item in mainMenuLists" :key="item.id">
<view class="kuaiTit"> <view class="kuaiTit">
{{item.categoryName}} {{item.categoryName}}
...@@ -219,6 +219,13 @@ ...@@ -219,6 +219,13 @@
identity: true identity: true
}, },
{ {
title: '我的卡券',
icon: 'icon-yifukuan',
link: '/myPackageA/ticket/unUsed',
isOpen: true,
isShow: true
},
{
title: '我的售后', title: '我的售后',
icon: 'icon-shouhoufuwu', icon: 'icon-shouhoufuwu',
link: '/pages/afterSales/afterSales', link: '/pages/afterSales/afterSales',
...@@ -239,6 +246,7 @@ ...@@ -239,6 +246,7 @@
id: '01', id: '01',
categoryName: '团队', categoryName: '团队',
children: [{ children: [{
key:'applyFranchises',
title: '申请加盟', title: '申请加盟',
icon: 'icon-hezuo', icon: 'icon-hezuo',
link: '/myPackageA/applyFranchise/applyFranchise?', link: '/myPackageA/applyFranchise/applyFranchise?',
...@@ -430,7 +438,7 @@ ...@@ -430,7 +438,7 @@
const team = this.mainMenuLists.find(item => item.id === '01'); const team = this.mainMenuLists.find(item => item.id === '01');
if (!team) return; if (!team) return;
const applyItem = team.children.find(child => child.key === 'applyFranchise'); const applyItem = team.children.find(child => child.key == 'applyFranchises');
if (!applyItem) return; if (!applyItem) return;
// 3. 更新标题和显示状态 // 3. 更新标题和显示状态
...@@ -497,7 +505,7 @@ ...@@ -497,7 +505,7 @@
for (let key in this.partnerStatistic) { for (let key in this.partnerStatistic) {
if (key != 'peopleNum' && key != 'reachPeopleNum' && key != 'totalPeopleNum') { if (key != 'peopleNum' && key != 'reachPeopleNum' && key != 'totalPeopleNum') {
if (key) { if (key) {
this.partnerStatistic[key] = Number(this.partnerStatistic[key].toFixed(2)) this.partnerStatistic[key] = this.partnerStatistic[key] ? Number(this.partnerStatistic[key].toFixed(2)) : 0
} }
} }
} }
...@@ -566,6 +574,7 @@ ...@@ -566,6 +574,7 @@
this.bootpage = false this.bootpage = false
}, },
isLogin() { isLogin() {
console.log('11111');
uni.navigateTo({ uni.navigateTo({
url: '/myPackageA/login/login?from=personalCenter' url: '/myPackageA/login/login?from=personalCenter'
}) })
......
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n():"function"==typeof define&&define.amd?define(n):(e=e||self).uni=n()}(this,(function(){"use strict";try{var e={};Object.defineProperty(e,"passive",{get:function(){!0}}),window.addEventListener("test-passive",null,e)}catch(e){}var n=Object.prototype.hasOwnProperty;function i(e,i){return n.call(e,i)}Object.assign({},{unit:"rem",unitRatio:10/320,unitPrecision:5});var t=[];function o(){return window.__dcloud_weex_postMessage||window.__dcloud_weex_}function a(){return window.__uniapp_x_postMessage||window.__uniapp_x_}var r=function(e,n){var i={options:{timestamp:+new Date},name:e,arg:n};if(a()){if("postMessage"===e){var r={data:n};return window.__uniapp_x_postMessage?window.__uniapp_x_postMessage(r):window.__uniapp_x_.postMessage(JSON.stringify(r))}var d={type:"WEB_INVOKE_APPSERVICE",args:{data:i,webviewIds:t}};window.__uniapp_x_postMessage?window.__uniapp_x_postMessageToService(d):window.__uniapp_x_.postMessageToService(JSON.stringify(d))}else if(o()){if("postMessage"===e){var s={data:[n]};return window.__dcloud_weex_postMessage?window.__dcloud_weex_postMessage(s):window.__dcloud_weex_.postMessage(JSON.stringify(s))}var w={type:"WEB_INVOKE_APPSERVICE",args:{data:i,webviewIds:t}};window.__dcloud_weex_postMessage?window.__dcloud_weex_postMessageToService(w):window.__dcloud_weex_.postMessageToService(JSON.stringify(w))}else{if(!window.plus)return window.parent.postMessage({type:"WEB_INVOKE_APPSERVICE",data:i,pageId:""},"*");if(0===t.length){var u=plus.webview.currentWebview();if(!u)throw new Error("plus.webview.currentWebview() is undefined");var g=u.parent(),c="";c=g?g.id:u.id,t.push(c)}if(plus.webview.getWebviewById("__uniapp__service"))plus.webview.postMessageToUniNView({type:"WEB_INVOKE_APPSERVICE",args:{data:i,webviewIds:t}},"__uniapp__service");else{var v=JSON.stringify(i);plus.webview.getLaunchWebview().evalJS('UniPlusBridge.subscribeHandler("'.concat("WEB_INVOKE_APPSERVICE",'",').concat(v,",").concat(JSON.stringify(t),");"))}}},d={navigateTo:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.url;r("navigateTo",{url:encodeURI(n)})},navigateBack:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.delta;r("navigateBack",{delta:parseInt(n)||1})},switchTab:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.url;r("switchTab",{url:encodeURI(n)})},reLaunch:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.url;r("reLaunch",{url:encodeURI(n)})},redirectTo:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.url;r("redirectTo",{url:encodeURI(n)})},getEnv:function(e){a()?e({uvue:!0}):o()?e({nvue:!0}):window.plus?e({plus:!0}):e({h5:!0})},postMessage:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};r("postMessage",e.data||{})}},s=/uni-app/i.test(navigator.userAgent),w=/Html5Plus/i.test(navigator.userAgent),u=/complete|loaded|interactive/;var g=window.my&&navigator.userAgent.indexOf(["t","n","e","i","l","C","y","a","p","i","l","A"].reverse().join(""))>-1;var c=window.swan&&window.swan.webView&&/swan/i.test(navigator.userAgent);var v=window.qq&&window.qq.miniProgram&&/QQ/i.test(navigator.userAgent)&&/miniProgram/i.test(navigator.userAgent);var p=window.tt&&window.tt.miniProgram&&/toutiaomicroapp/i.test(navigator.userAgent);var _=window.wx&&window.wx.miniProgram&&/micromessenger/i.test(navigator.userAgent)&&/miniProgram/i.test(navigator.userAgent);var m=window.qa&&/quickapp/i.test(navigator.userAgent);var f=window.ascfwebProxy&&window.ascfwebProxy.invokeJsApi&&/ASCF/i.test(navigator.userAgent);var l=window.ks&&window.ks.miniProgram&&/micromessenger/i.test(navigator.userAgent)&&/miniProgram/i.test(navigator.userAgent);var E=window.tt&&window.tt.miniProgram&&/Lark|Feishu/i.test(navigator.userAgent);var x=window.jd&&window.jd.miniProgram&&/jdmp/i.test(navigator.userAgent);var S=window.xhs&&window.xhs.miniProgram&&/xhsminiapp/i.test(navigator.userAgent);for(var y,b=function(){window.UniAppJSBridge=!0,document.dispatchEvent(new CustomEvent("UniAppJSBridgeReady",{bubbles:!0,cancelable:!0}))},h=[function(e){if(s||w)return window.__uniapp_x_postMessage||window.__uniapp_x_||window.__dcloud_weex_postMessage||window.__dcloud_weex_?document.addEventListener("DOMContentLoaded",e):window.plus&&u.test(document.readyState)?setTimeout(e,0):document.addEventListener("plusready",e),d},function(e){if(_)return window.WeixinJSBridge&&window.WeixinJSBridge.invoke?setTimeout(e,0):document.addEventListener("WeixinJSBridgeReady",e),window.wx.miniProgram},function(e){if(v)return window.QQJSBridge&&window.QQJSBridge.invoke?setTimeout(e,0):document.addEventListener("QQJSBridgeReady",e),window.qq.miniProgram},function(e){if(g){"loading"!==document.readyState?setTimeout(e,0):document.addEventListener("DOMContentLoaded",e);var n=window.my;return{navigateTo:n.navigateTo,navigateBack:n.navigateBack,switchTab:n.switchTab,reLaunch:n.reLaunch,redirectTo:n.redirectTo,postMessage:n.postMessage,getEnv:n.getEnv}}},function(e){if(c)return"loading"!==document.readyState?setTimeout(e,0):document.addEventListener("DOMContentLoaded",e),window.swan.webView},function(e){if(p)return document.addEventListener("DOMContentLoaded",e),window.tt.miniProgram},function(e){if(m){window.QaJSBridge&&window.QaJSBridge.invoke?setTimeout(e,0):document.addEventListener("QaJSBridgeReady",e);var n=window.qa;return{navigateTo:n.navigateTo,navigateBack:n.navigateBack,switchTab:n.switchTab,reLaunch:n.reLaunch,redirectTo:n.redirectTo,postMessage:n.postMessage,getEnv:n.getEnv}}},function(e){if(f)return document.addEventListener("DOMContentLoaded",e),Object.assign({},window.has,window.has.ascfweb)},function(e){if(l)return window.WeixinJSBridge&&window.WeixinJSBridge.invoke?setTimeout(e,0):document.addEventListener("WeixinJSBridgeReady",e),window.ks.miniProgram},function(e){if(E)return"loading"!==document.readyState?setTimeout(e,0):document.addEventListener("DOMContentLoaded",e),window.tt.miniProgram},function(e){if(x)return window.JDJSBridgeReady&&window.JDJSBridgeReady.invoke?setTimeout(e,0):document.addEventListener("JDJSBridgeReady",e),window.jd.miniProgram},function(e){if(S)return window.xhs.miniProgram},function(e){return document.addEventListener("DOMContentLoaded",e),d}],P=0;P<h.length&&!(y=h[P](b));P++);y||(y={});var M="undefined"!=typeof uni?uni:{};if(!M.navigateTo)for(var T in y)i(y,T)&&(M[T]=y[T]);return M.webView=y,M}));
...@@ -75,3 +75,32 @@ $uni-color-subtitle: #555555; // 二级标题颜色 ...@@ -75,3 +75,32 @@ $uni-color-subtitle: #555555; // 二级标题颜色
$uni-font-size-subtitle:26px; $uni-font-size-subtitle:26px;
$uni-color-paragraph: #3F536E; // 文章段落颜色 $uni-color-paragraph: #3F536E; // 文章段落颜色
$uni-font-size-paragraph:15px; $uni-font-size-paragraph:15px;
// $system-auxiliary-deepgray:#2A36AD;
//系统主题色
$system-main-color:#CE0E2D;
$system-main-color1:rgba(206, 14, 45,.1);
$system-main-color2:rgba(206, 14, 45,.2);
$system-main-color3:rgba(206, 14, 45,.3);
$system-main-color4:rgba(206, 14, 45,.4);
$system-main-color5:rgba(206, 14, 45,.5);
$system-main-color6:rgba(206, 14, 45,.6);
$system-main-color7:rgba(206, 14, 45,.7);
$system-main-color8:rgba(206, 14, 45,.8);
$system-main-color9:rgba(206, 14, 45,.9);
// 系统辅助色
$system-auxiliary-gray:#E6E6E6;
// 系统辅助色
$system-auxiliary-deepgray:#898989;
// 绝对居中
@mixin flex($alignItems, $justifyContent) {
display: flex;
align-items: $alignItems;
justify-content: $justifyContent;
}
@mixin background-cover($bg-image,$bg-size) {
background-image: url($bg-image);
background-size: $bg-size;
background-position: center;
background-repeat: no-repeat;
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment