mirror of
https://gitee.com/niucloud-team/niucloud.git
synced 2026-02-03 07:58:10 +00:00
同步uniapp
This commit is contained in:
parent
5a2da25c9c
commit
3a89a12ff0
1
uni-app/package-lock.json
generated
1
uni-app/package-lock.json
generated
@ -45,6 +45,7 @@
|
|||||||
"@types/qrcode": "^1.5.0",
|
"@types/qrcode": "^1.5.0",
|
||||||
"@types/sortablejs": "^1.15.0",
|
"@types/sortablejs": "^1.15.0",
|
||||||
"@vue/tsconfig": "^0.1.3",
|
"@vue/tsconfig": "^0.1.3",
|
||||||
|
"cross-env": "^7.0.3",
|
||||||
"sass": "^1.54.5",
|
"sass": "^1.54.5",
|
||||||
"sass-loader": "10.4.1",
|
"sass-loader": "10.4.1",
|
||||||
"typescript": "^4.9.4",
|
"typescript": "^4.9.4",
|
||||||
|
|||||||
@ -24,7 +24,7 @@
|
|||||||
"build:app-android": "uni build -p app-android",
|
"build:app-android": "uni build -p app-android",
|
||||||
"build:app-ios": "uni build -p app-ios",
|
"build:app-ios": "uni build -p app-ios",
|
||||||
"build:custom": "uni build -p",
|
"build:custom": "uni build -p",
|
||||||
"build:h5": "uni build && node publish.cjs h5 build",
|
"build:h5": "cross-env NODE_OPTIONS=--max-old-space-size=4096 && uni build && node publish.cjs h5 build",
|
||||||
"build:h5:ssr": "uni build --ssr",
|
"build:h5:ssr": "uni build --ssr",
|
||||||
"build:mp-alipay": "uni build -p mp-alipay",
|
"build:mp-alipay": "uni build -p mp-alipay",
|
||||||
"build:mp-baidu": "uni build -p mp-baidu",
|
"build:mp-baidu": "uni build -p mp-baidu",
|
||||||
@ -33,7 +33,7 @@
|
|||||||
"build:mp-lark": "uni build -p mp-lark",
|
"build:mp-lark": "uni build -p mp-lark",
|
||||||
"build:mp-qq": "uni build -p mp-qq",
|
"build:mp-qq": "uni build -p mp-qq",
|
||||||
"build:mp-toutiao": "uni build -p mp-toutiao",
|
"build:mp-toutiao": "uni build -p mp-toutiao",
|
||||||
"build:mp-weixin": "uni build -p mp-weixin && node publish.cjs mp-weixin build",
|
"build:mp-weixin": "cross-env NODE_OPTIONS=--max-old-space-size=4096 && uni build -p mp-weixin && node publish.cjs mp-weixin build",
|
||||||
"build:quickapp-webview": "uni build -p quickapp-webview",
|
"build:quickapp-webview": "uni build -p quickapp-webview",
|
||||||
"build:quickapp-webview-huawei": "uni build -p quickapp-webview-huawei",
|
"build:quickapp-webview-huawei": "uni build -p quickapp-webview-huawei",
|
||||||
"build:quickapp-webview-union": "uni build -p quickapp-webview-union",
|
"build:quickapp-webview-union": "uni build -p quickapp-webview-union",
|
||||||
@ -83,6 +83,7 @@
|
|||||||
"vite": "4.0.4",
|
"vite": "4.0.4",
|
||||||
"vite-plugin-windicss": "^1.8.10",
|
"vite-plugin-windicss": "^1.8.10",
|
||||||
"vue-tsc": "^1.0.24",
|
"vue-tsc": "^1.0.24",
|
||||||
"windicss": "^3.5.6"
|
"windicss": "^3.5.6",
|
||||||
|
"cross-env": "^7.0.3"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -15,6 +15,7 @@ const main = () => {
|
|||||||
if (mode == 'build') {
|
if (mode == 'build') {
|
||||||
handleWeappAddonComponents(mode)
|
handleWeappAddonComponents(mode)
|
||||||
handleWeappLanguage(mode)
|
handleWeappLanguage(mode)
|
||||||
|
handleProjectConfig(mode)
|
||||||
} else if (mode == 'dev') {
|
} else if (mode == 'dev') {
|
||||||
listenWeappRunDev()
|
listenWeappRunDev()
|
||||||
}
|
}
|
||||||
@ -96,6 +97,19 @@ const handleWeappLanguage = (mode) => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const handleProjectConfig = (mode) => {
|
||||||
|
const src = `./dist/${mode}/mp-weixin/project.config.json`
|
||||||
|
|
||||||
|
try {
|
||||||
|
let content = fs.readFileSync(src, 'utf8');
|
||||||
|
const config = JSON.parse(content)
|
||||||
|
config.setting.minifyWXML = false
|
||||||
|
fs.writeFileSync(src, JSON.stringify(config))
|
||||||
|
} catch (err) {
|
||||||
|
console.log(err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const listenWeappRunDev = () => {
|
const listenWeappRunDev = () => {
|
||||||
const devProcess = spawn('npm', ['run', 'dev:niu-mp-weixin'], {
|
const devProcess = spawn('npm', ['run', 'dev:niu-mp-weixin'], {
|
||||||
stdio: ['pipe', 'pipe', 'pipe'],
|
stdio: ['pipe', 'pipe', 'pipe'],
|
||||||
@ -112,6 +126,7 @@ const listenWeappRunDev = () => {
|
|||||||
serverReady = true;
|
serverReady = true;
|
||||||
handleWeappAddonComponents('dev')
|
handleWeappAddonComponents('dev')
|
||||||
handleWeappLanguage('dev')
|
handleWeappLanguage('dev')
|
||||||
|
handleProjectConfig('dev')
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@ -152,6 +152,7 @@ export function useDiyGroup(params: any = {}) {
|
|||||||
})
|
})
|
||||||
onHide(() => {
|
onHide(() => {
|
||||||
isPagesHide.value = true;
|
isPagesHide.value = true;
|
||||||
|
diyStore.global.bottomTabBar.isShow = false
|
||||||
})
|
})
|
||||||
|
|
||||||
// 监听滚动事件
|
// 监听滚动事件
|
||||||
|
|||||||
@ -7,14 +7,6 @@ export function pay(data : AnyObject) {
|
|||||||
return request.post(`pay`, data, { showErrorMessage: true })
|
return request.post(`pay`, data, { showErrorMessage: true })
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 测试支付
|
|
||||||
*/
|
|
||||||
export function testPay(data : AnyObject) {
|
|
||||||
return request.get(`home_service/pay/pay`, data, { showErrorMessage: true })
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取支付信息
|
* 获取支付信息
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -19,6 +19,9 @@
|
|||||||
<wx-privacy-popup ref="wxPrivacyPopupRef"></wx-privacy-popup>
|
<wx-privacy-popup ref="wxPrivacyPopupRef"></wx-privacy-popup>
|
||||||
<!-- #endif -->
|
<!-- #endif -->
|
||||||
|
|
||||||
|
<template v-if="diyStore && diyStore.mode == '' && diyStore.global && diyStore.global.bottomTabBar && diyStore.global.bottomTabBar.isShow">
|
||||||
|
<tabbar :addon="diyStore.global.bottomTabBar.designNav?.key" />
|
||||||
|
</template>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -27,9 +30,10 @@ import { ref, nextTick } from 'vue';
|
|||||||
import { useDiy } from '@/hooks/useDiy'
|
import { useDiy } from '@/hooks/useDiy'
|
||||||
import { useShare } from '@/hooks/useShare'
|
import { useShare } from '@/hooks/useShare'
|
||||||
import diyGroup from '@/addon/components/diy/group/index.vue'
|
import diyGroup from '@/addon/components/diy/group/index.vue'
|
||||||
|
import useDiyStore from '@/app/stores/diy'
|
||||||
|
|
||||||
const { setShare } = useShare()
|
const { setShare } = useShare()
|
||||||
|
const diyStore = useDiyStore()
|
||||||
const diy = useDiy({})
|
const diy = useDiy({})
|
||||||
|
|
||||||
const diyGroupRef = ref(null)
|
const diyGroupRef = ref(null)
|
||||||
|
|||||||
@ -23,6 +23,10 @@
|
|||||||
<!-- #ifdef APP -->
|
<!-- #ifdef APP -->
|
||||||
<update-version ref="updateVersionRef"></update-version>
|
<update-version ref="updateVersionRef"></update-version>
|
||||||
<!-- #endif -->
|
<!-- #endif -->
|
||||||
|
|
||||||
|
<template v-if="diyStore && diyStore.mode == '' && diyStore.global && diyStore.global.bottomTabBar && diyStore.global.bottomTabBar.isShow">
|
||||||
|
<tabbar :addon="diyStore.global.bottomTabBar.designNav?.key" />
|
||||||
|
</template>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -34,9 +38,12 @@ import { useShare } from '@/hooks/useShare'
|
|||||||
import diyGroup from '@/addon/components/diy/group/index.vue'
|
import diyGroup from '@/addon/components/diy/group/index.vue'
|
||||||
import updateVersion from '@/components/update-version/update-version.vue'
|
import updateVersion from '@/components/update-version/update-version.vue'
|
||||||
import useSystemStore from '@/stores/system';
|
import useSystemStore from '@/stores/system';
|
||||||
|
import useDiyStore from '@/app/stores/diy'
|
||||||
|
|
||||||
const { setShare } = useShare()
|
const { setShare } = useShare()
|
||||||
|
|
||||||
|
const diyStore = useDiyStore()
|
||||||
|
|
||||||
uni.hideTabBar() // 隐藏tabbar
|
uni.hideTabBar() // 隐藏tabbar
|
||||||
|
|
||||||
const diy = useDiy({
|
const diy = useDiy({
|
||||||
|
|||||||
@ -76,7 +76,7 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref, computed, nextTick } from 'vue'
|
import { ref, computed, nextTick } from 'vue'
|
||||||
import { onLoad } from '@dcloudio/uni-app'
|
import { onLoad } from '@dcloudio/uni-app'
|
||||||
import { redirect } from '@/utils/common'
|
import { deepClone, redirect } from '@/utils/common'
|
||||||
import { t } from '@/locale'
|
import { t } from '@/locale'
|
||||||
import { addAddress, editAddress, getAddressInfo } from '@/app/api/member'
|
import { addAddress, editAddress, getAddressInfo } from '@/app/api/member'
|
||||||
import manifestJson from '@/manifest.json'
|
import manifestJson from '@/manifest.json'
|
||||||
@ -296,7 +296,6 @@ const chooseLocation = () => {
|
|||||||
|
|
||||||
// #ifdef H5
|
// #ifdef H5
|
||||||
const urlencode = formData.value;
|
const urlencode = formData.value;
|
||||||
uni.setStorageSync('addressInfo', urlencode);
|
|
||||||
let backurl = location.origin + location.pathname + '?source=' + source.value;
|
let backurl = location.origin + location.pathname + '?source=' + source.value;
|
||||||
if (isSelectMap.value) {
|
if (isSelectMap.value) {
|
||||||
backurl = backurl + '&isSelectMap=' + isSelectMap.value
|
backurl = backurl + '&isSelectMap=' + isSelectMap.value
|
||||||
@ -318,6 +317,7 @@ const getAddress = (latlng: any) => {
|
|||||||
formData.value.full_address += res.data.district != undefined ? '' + res.data.district : '';
|
formData.value.full_address += res.data.district != undefined ? '' + res.data.district : '';
|
||||||
|
|
||||||
formData.value.address_name = formData.value.full_address.replace(/-/g, '');
|
formData.value.address_name = formData.value.full_address.replace(/-/g, '');
|
||||||
|
|
||||||
formData.value.area = (res.data.province + res.data.city + res.data.district) || res.data.full_address;
|
formData.value.area = (res.data.province + res.data.city + res.data.district) || res.data.full_address;
|
||||||
formData.value.province_id = res.data.province_id != undefined ? res.data.province_id : 0;
|
formData.value.province_id = res.data.province_id != undefined ? res.data.province_id : 0;
|
||||||
formData.value.city_id = res.data.city_id != undefined ? res.data.city_id : 0;
|
formData.value.city_id = res.data.city_id != undefined ? res.data.city_id : 0;
|
||||||
|
|||||||
@ -18,6 +18,9 @@
|
|||||||
<wx-privacy-popup ref="wxPrivacyPopupRef"></wx-privacy-popup>
|
<wx-privacy-popup ref="wxPrivacyPopupRef"></wx-privacy-popup>
|
||||||
<!-- #endif -->
|
<!-- #endif -->
|
||||||
|
|
||||||
|
<template v-if="diyStore && diyStore.mode == '' && diyStore.global && diyStore.global.bottomTabBar && diyStore.global.bottomTabBar.isShow">
|
||||||
|
<tabbar :addon="diyStore.global.bottomTabBar.designNav?.key" />
|
||||||
|
</template>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -28,9 +31,11 @@ import { useShare } from '@/hooks/useShare'
|
|||||||
import { redirect } from '@/utils/common';
|
import { redirect } from '@/utils/common';
|
||||||
import diyGroup from '@/addon/components/diy/group/index.vue'
|
import diyGroup from '@/addon/components/diy/group/index.vue'
|
||||||
import useMemberStore from '@/stores/member'
|
import useMemberStore from '@/stores/member'
|
||||||
|
import useDiyStore from '@/app/stores/diy'
|
||||||
|
|
||||||
// 会员信息
|
// 会员信息
|
||||||
const memberStore = useMemberStore()
|
const memberStore = useMemberStore()
|
||||||
|
const diyStore = useDiyStore()
|
||||||
const userInfo = computed(() => memberStore.info)
|
const userInfo = computed(() => memberStore.info)
|
||||||
const { setShare } = useShare()
|
const { setShare } = useShare()
|
||||||
|
|
||||||
|
|||||||
@ -58,9 +58,10 @@
|
|||||||
<text class="text-[28rpx] text-[#333]">{{ subItem.value }}</text>
|
<text class="text-[28rpx] text-[#333]">{{ subItem.value }}</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="common-tab-bar w-[100%]"></view>
|
<view class="common-tab-bar w-[100%]">
|
||||||
<view class="verify-tab-bar fixed flex-center !text-[26rpx] rounded-[50rpx] h-[80rpx] left-[20rpx] right-[20rpx] text-[#fff] font-500" :class="verifyInfo.is_can_use ? 'primary-btn-bg' : 'bg-[#ccc]'" @click="verifyFn">确定</view>
|
<view class="common-tab-bar-placeholder"></view>
|
||||||
|
<view class="verify-tab-bar fixed flex-center !text-[26rpx] rounded-[50rpx] h-[80rpx] left-[20rpx] right-[20rpx] text-[#fff] font-500" :class="verifyInfo.is_can_use ? 'primary-btn-bg' : 'bg-[#ccc]'" @click="verifyFn">确定</view>
|
||||||
|
</view>
|
||||||
</template>
|
</template>
|
||||||
<loading-page :loading="loading"></loading-page>
|
<loading-page :loading="loading"></loading-page>
|
||||||
</view>
|
</view>
|
||||||
|
|||||||
@ -5,7 +5,7 @@
|
|||||||
示例版权信息
|
示例版权信息
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
<tempalte v-else>
|
<template v-else>
|
||||||
<view class="flex flex-col justify-center items-center p-[30rpx]" :style="{ color:textColor}">
|
<view class="flex flex-col justify-center items-center p-[30rpx]" :style="{ color:textColor}">
|
||||||
<img :src="img(systemStore.copyright.logo)" mode="heightFix" class="max-h-[60rpx]" v-if="systemStore.copyright?.logo" />
|
<img :src="img(systemStore.copyright.logo)" mode="heightFix" class="max-h-[60rpx]" v-if="systemStore.copyright?.logo" />
|
||||||
<view class="text-[22rpx] mt-[20rpx]" v-if="systemStore.copyright?.copyright_desc" @click="systemStore.copyright?.copyright_link && redirect({ url: systemStore.copyright.copyright_link})">
|
<view class="text-[22rpx] mt-[20rpx]" v-if="systemStore.copyright?.copyright_desc" @click="systemStore.copyright?.copyright_link && redirect({ url: systemStore.copyright.copyright_link})">
|
||||||
@ -19,7 +19,7 @@
|
|||||||
{{ systemStore.copyright.gov_record }}
|
{{ systemStore.copyright.gov_record }}
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</tempalte>
|
</template>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
@ -34,7 +34,7 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref } from 'vue'
|
import { ref } from 'vue'
|
||||||
import { t } from '@/locale'
|
import { t } from '@/locale'
|
||||||
import { getPayInfo, pay,testPay } from '@/app/api/pay'
|
import { getPayInfo, pay } from '@/app/api/pay'
|
||||||
import { img, redirect, isWeixinBrowser, moneyFormat } from '@/utils/common'
|
import { img, redirect, isWeixinBrowser, moneyFormat } from '@/utils/common'
|
||||||
import wechat from '@/utils/wechat'
|
import wechat from '@/utils/wechat'
|
||||||
|
|
||||||
@ -148,7 +148,7 @@ const confirmPay = () => {
|
|||||||
// #ifndef H5
|
// #ifndef H5
|
||||||
uni.requestPayment({
|
uni.requestPayment({
|
||||||
provider: 'alipay',
|
provider: 'alipay',
|
||||||
...res.data,
|
orderInfo: res.data,
|
||||||
success: (res: any) => {
|
success: (res: any) => {
|
||||||
toPayResult()
|
toPayResult()
|
||||||
},
|
},
|
||||||
@ -181,7 +181,7 @@ const confirmPay = () => {
|
|||||||
uni.$on('checkIsReturnAfterPayment', () => {
|
uni.$on('checkIsReturnAfterPayment', () => {
|
||||||
const data = uni.getStorageSync('paymenting')
|
const data = uni.getStorageSync('paymenting')
|
||||||
if (uni.getStorageSync('paymenting')) {
|
if (uni.getStorageSync('paymenting')) {
|
||||||
|
|
||||||
redirect({
|
redirect({
|
||||||
url: '/app/pages/pay/result',
|
url: '/app/pages/pay/result',
|
||||||
param: {
|
param: {
|
||||||
@ -248,7 +248,7 @@ const toPayResult = () => {
|
|||||||
})
|
})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
redirect({
|
redirect({
|
||||||
url: '/app/pages/pay/result',
|
url: '/app/pages/pay/result',
|
||||||
param: { trade_type: payInfo.value?.trade_type, trade_id: payInfo.value?.trade_id },
|
param: { trade_type: payInfo.value?.trade_type, trade_id: payInfo.value?.trade_id },
|
||||||
|
|||||||
@ -1,11 +1,13 @@
|
|||||||
<template>
|
<template>
|
||||||
<template v-if="tabbar && Object.keys(tabbar).length">
|
<template v-if="tabbar && Object.keys(tabbar).length">
|
||||||
<u-tabbar :value="value" zIndex="9999" :fixed="true" :placeholder="true" :safeAreaInsetBottom="true" :inactive-color="tabbar.value.textColor" :active-color="tabbar.value.textHoverColor" :border="props.border" class="custom-tabbar">
|
<u-tabbar :value="value" zIndex="9999" :fixed="true" :placeholder="true" :safeAreaInsetBottom="false" :inactive-color="tabbar.value.textColor" :active-color="tabbar.value.textHoverColor" :border="props.border" class="custom-tabbar">
|
||||||
<template v-for="item in tabbar.value.list">
|
<view class="safe-area flex bg-white">
|
||||||
<u-tabbar-item class="py-[5rpx]" :custom-style="{'background-color': tabbar.value.backgroundColor}" :text="item.text" :icon="img(value == item.link.url ? item.iconSelectPath : item.iconPath)" :name="item.link.url" v-if="tabbar.value.type == 1" @click="itemBtn(item.link.url)"></u-tabbar-item>
|
<template v-for="item in tabbar.value.list">
|
||||||
<u-tabbar-item class="py-[5rpx]" :custom-style="{'background-color': tabbar.value.backgroundColor}" :icon="img(value == item.link.url ? item.iconSelectPath : item.iconPath)" :name="item.link.url" v-if="tabbar.value.type == 2" @click="itemBtn(item.link.url)"></u-tabbar-item>
|
<u-tabbar-item class="py-[5rpx]" :custom-style="{'background-color': tabbar.value.backgroundColor}" :text="item.text" :icon="img(value == item.link.url ? item.iconSelectPath : item.iconPath)" :name="item.link.url" v-if="tabbar.value.type == 1" @click="itemBtn(item.link.url)"></u-tabbar-item>
|
||||||
<u-tabbar-item class="py-[5rpx]" :custom-style="{'background-color': tabbar.value.backgroundColor}" :text="item.text" :name="item.link.url" v-if="tabbar.value.type == 3" @click="itemBtn(item.link.url)"></u-tabbar-item>
|
<u-tabbar-item class="py-[5rpx]" :custom-style="{'background-color': tabbar.value.backgroundColor}" :icon="img(value == item.link.url ? item.iconSelectPath : item.iconPath)" :name="item.link.url" v-if="tabbar.value.type == 2" @click="itemBtn(item.link.url)"></u-tabbar-item>
|
||||||
</template>
|
<u-tabbar-item class="py-[5rpx]" :custom-style="{'background-color': tabbar.value.backgroundColor}" :text="item.text" :name="item.link.url" v-if="tabbar.value.type == 3" @click="itemBtn(item.link.url)"></u-tabbar-item>
|
||||||
|
</template>
|
||||||
|
</view>
|
||||||
</u-tabbar>
|
</u-tabbar>
|
||||||
<view class="tab-bar-placeholder"></view>
|
<view class="tab-bar-placeholder"></view>
|
||||||
</template>
|
</template>
|
||||||
@ -201,6 +203,12 @@ nextTick(() => {
|
|||||||
padding-bottom: calc(constant(safe-area-inset-bottom) + 50px);
|
padding-bottom: calc(constant(safe-area-inset-bottom) + 50px);
|
||||||
padding-bottom: calc(env(safe-area-inset-bottom) + 50px);
|
padding-bottom: calc(env(safe-area-inset-bottom) + 50px);
|
||||||
}
|
}
|
||||||
|
.safe-area {
|
||||||
|
background: white;
|
||||||
|
width: 100%;
|
||||||
|
padding-bottom: calc(constant(safe-area-inset-bottom) + 1px);
|
||||||
|
padding-bottom: calc(env(safe-area-inset-bottom) + 1px);
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@ -226,6 +234,5 @@ nextTick(() => {
|
|||||||
font-size: 20rpx !important;
|
font-size: 20rpx !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* #endif */
|
/* #endif */
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@ -3,7 +3,7 @@
|
|||||||
<view class="u-navbar z-100" :class="{'fixed': props.scrollBool != -1, 'absolute': props.scrollBool == -1}" :style="{ backgroundColor: bgColor}">
|
<view class="u-navbar z-100" :class="{'fixed': props.scrollBool != -1, 'absolute': props.scrollBool == -1}" :style="{ backgroundColor: bgColor}">
|
||||||
<view class="navbar-inner" :style="{ width: '100%', height: placeholderHeight + 'px' }">
|
<view class="navbar-inner" :style="{ width: '100%', height: placeholderHeight + 'px' }">
|
||||||
<view v-if="topStatusBarData.style == 'style-1'" class="content-wrap" :class="[topStatusBarData.textAlign]" :style="navbarInnerStyle">
|
<view v-if="topStatusBarData.style == 'style-1'" class="content-wrap" :class="[topStatusBarData.textAlign]" :style="navbarInnerStyle">
|
||||||
<view class="back-wrap -ml-[16rpx] text-[26px] nc-iconfont nc-icon-zuoV6xx" :class="{'!text-transparent': !isBackShow}" :style="{ color: titleTextColor }" @tap="goBack"></view>
|
<view v-if="isBackShow" class="back-wrap -ml-[16rpx] text-[26px] nc-iconfont nc-icon-zuoV6xx" :class="{'!text-transparent': !isBackShow}" :style="{ color: titleTextColor }" @tap="goBack"></view>
|
||||||
<view class="title-wrap" :style="styleOneFontSize">{{ data.title }}</view>
|
<view class="title-wrap" :style="styleOneFontSize">{{ data.title }}</view>
|
||||||
</view>
|
</view>
|
||||||
<view v-if="topStatusBarData.style == 'style-2'" class="content-wrap" :style="navbarInnerStyle" @click="diyStore.toRedirect(topStatusBarData.link)">
|
<view v-if="topStatusBarData.style == 'style-2'" class="content-wrap" :style="navbarInnerStyle" @click="diyStore.toRedirect(topStatusBarData.link)">
|
||||||
@ -194,7 +194,7 @@ const isBackShow = computed(() => {
|
|||||||
let bool = false;
|
let bool = false;
|
||||||
if (props.isBack && pages.length > 1) {
|
if (props.isBack && pages.length > 1) {
|
||||||
bool = true;
|
bool = true;
|
||||||
} else if (currRoute() == 'app/pages/auth/index') {
|
} else if (currRoute() == 'app/pages/auth/index' || currRoute() == 'app/pages/auth/login') {
|
||||||
bool = true;
|
bool = true;
|
||||||
}
|
}
|
||||||
return bool;
|
return bool;
|
||||||
|
|||||||
@ -143,6 +143,9 @@ export function useDiy(params: any = {}) {
|
|||||||
item.pageStyle += 'padding-left:' + item.margin.both * 2 + 'rpx' + ';';
|
item.pageStyle += 'padding-left:' + item.margin.both * 2 + 'rpx' + ';';
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
diyStore.global = diyData.global
|
||||||
|
diyStore.value = diyData.value
|
||||||
|
|
||||||
// 控制自定义头部是否出现 | 微信小程序
|
// 控制自定义头部是否出现 | 微信小程序
|
||||||
isShowTopTabbar.value = diyData.value.some((item: any) => {
|
isShowTopTabbar.value = diyData.value.some((item: any) => {
|
||||||
|
|||||||
@ -244,7 +244,7 @@ button[type='primary'],uni-button[type='primary']{
|
|||||||
margin-right: 40rpx;
|
margin-right: 40rpx;
|
||||||
color: #333;
|
color: #333;
|
||||||
line-height: 40rpx;
|
line-height: 40rpx;
|
||||||
font-size: 28rpx;
|
font-size: 26rpx;
|
||||||
&.class-select{
|
&.class-select{
|
||||||
position: relative;
|
position: relative;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
@ -288,7 +288,7 @@ button[type='primary'],uni-button[type='primary']{
|
|||||||
.tab-items{
|
.tab-items{
|
||||||
line-height: 88rpx;
|
line-height: 88rpx;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
font-size: 28rpx;
|
font-size: 26rpx;
|
||||||
&.class-select{
|
&.class-select{
|
||||||
position: relative;
|
position: relative;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
@ -317,7 +317,7 @@ button[type='primary'],uni-button[type='primary']{
|
|||||||
@apply flex-1;
|
@apply flex-1;
|
||||||
line-height: 88rpx;
|
line-height: 88rpx;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
font-size: 28rpx;
|
font-size: 26rpx;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
margin:0 var(--sidebar-m);
|
margin:0 var(--sidebar-m);
|
||||||
&.class-select{
|
&.class-select{
|
||||||
@ -567,4 +567,8 @@ button[type='primary'],uni-button[type='primary']{
|
|||||||
padding: 0 24rpx;
|
padding: 0 24rpx;
|
||||||
min-width: 144rpx;
|
min-width: 144rpx;
|
||||||
color: #333;
|
color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
|
.u-tabbar__content__item-wrapper {
|
||||||
|
height: calc(env(safe-area-inset-bottom) + 100rpx)!important;
|
||||||
}
|
}
|
||||||
@ -1,9 +1,9 @@
|
|||||||
@font-face {
|
@font-face {
|
||||||
font-family: "iconfont";
|
font-family: "iconfont";
|
||||||
/* Project id 3952239 */
|
/* Project id 3952239 */
|
||||||
src: url('//at.alicdn.com/t/c/font_3952239_waynfpfdr5.woff2?t=1762225321119') format('woff2'),
|
src: url('https://at.alicdn.com/t/c/font_3952239_waynfpfdr5.woff2?t=1762225321119') format('woff2'),
|
||||||
url('//at.alicdn.com/t/c/font_3952239_waynfpfdr5.woff?t=1762225321119') format('woff'),
|
url('https://at.alicdn.com/t/c/font_3952239_waynfpfdr5.woff?t=1762225321119') format('woff'),
|
||||||
url('//at.alicdn.com/t/c/font_3952239_waynfpfdr5.ttf?t=1762225321119') format('truetype');
|
url('https://at.alicdn.com/t/c/font_3952239_waynfpfdr5.ttf?t=1762225321119') format('truetype');
|
||||||
}
|
}
|
||||||
|
|
||||||
.iconfont {
|
.iconfont {
|
||||||
@ -1288,4 +1288,4 @@
|
|||||||
|
|
||||||
.iconshouye-zhihui:before {
|
.iconshouye-zhihui:before {
|
||||||
content: "\e61d";
|
content: "\e61d";
|
||||||
}
|
}
|
||||||
|
|||||||
@ -830,3 +830,11 @@ export function getTopFixedStatusName(data : any = {}) {
|
|||||||
if (data.type) name += '_' + data.type
|
if (data.type) name += '_' + data.type
|
||||||
return name
|
return name
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 距离显示
|
||||||
|
|
||||||
|
export function distance(distance: string | number): string {
|
||||||
|
const dist = typeof distance === 'string' ? parseFloat(distance) : distance;
|
||||||
|
if (isNaN(dist)) return distance.toString();
|
||||||
|
return dist < 1 ? parseInt((dist * 1000).toString()) + 'm' : dist.toFixed(1) + 'km'
|
||||||
|
}
|
||||||
@ -24,7 +24,7 @@ class Wechat {
|
|||||||
timestamp: data.timestamp, // 必填,生成签名的时间戳
|
timestamp: data.timestamp, // 必填,生成签名的时间戳
|
||||||
nonceStr: data.nonceStr, // 必填,生成签名的随机串
|
nonceStr: data.nonceStr, // 必填,生成签名的随机串
|
||||||
signature: data.signature,// 必填,签名
|
signature: data.signature,// 必填,签名
|
||||||
jsApiList: ['chooseWXPay', 'updateAppMessageShareData', 'updateTimelineShareData', 'scanQRCode', 'getLocation','hideMenuItems'] // 必填,需要使用的JS接口列表
|
jsApiList: ['chooseWXPay', 'updateAppMessageShareData', 'updateTimelineShareData', 'scanQRCode', 'getLocation', 'openLocation', 'hideMenuItems'] // 必填,需要使用的JS接口列表
|
||||||
});
|
});
|
||||||
if (callback) callback();
|
if (callback) callback();
|
||||||
})
|
})
|
||||||
@ -82,6 +82,28 @@ class Wechat {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 导航
|
||||||
|
* @param {Object} callback
|
||||||
|
*/
|
||||||
|
public openLocation(data: any, callback: any = null) {
|
||||||
|
wx.ready(function() {
|
||||||
|
wx.openLocation({
|
||||||
|
latitude: data.latitude, // 纬度,浮点数,范围为90 ~ -90
|
||||||
|
longitude: data.longitude, // 经度,浮点数,范围为180 ~ -180
|
||||||
|
name: data.name, // 位置名
|
||||||
|
address: data.address, // 地址详情说明
|
||||||
|
scale: data.scale || 28, // 地图缩放级别,整形值,范围从1~28。默认为最大
|
||||||
|
success: function(res) {
|
||||||
|
typeof callback == 'function' && callback(res);
|
||||||
|
},
|
||||||
|
fail: function(res) {
|
||||||
|
typeof callback == 'function' && callback(res);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 商家转账接口
|
* 商家转账接口
|
||||||
* @param {Object} options 转账参数
|
* @param {Object} options 转账参数
|
||||||
|
|||||||
6974
uni-app/yarn.lock
6974
uni-app/yarn.lock
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user