107 lines
2.1 KiB
Vue
107 lines
2.1 KiB
Vue
<template>
|
|
<view class="container b-f p-b">
|
|
<view class="agreement-content" v-if="content">
|
|
<mp-html :content="content" />
|
|
</view>
|
|
<view class="empty" v-else>
|
|
<text>协议内容不存在</text>
|
|
</view>
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
import service from './service'
|
|
import appPermission from './appPermission'
|
|
import activity from './activity'
|
|
import minor from './minor'
|
|
import privacy from './privacy'
|
|
import review from './review'
|
|
import refund from './refund'
|
|
import delivery from './delivery'
|
|
import getByMyself from './getByMyself'
|
|
|
|
export default {
|
|
data() {
|
|
return {
|
|
// 协议ID
|
|
agreementId: null,
|
|
// 协议内容
|
|
content: '',
|
|
agreementContent: {
|
|
service: service,
|
|
appPermission: appPermission,
|
|
activity: activity,
|
|
minor: minor,
|
|
privacy: privacy,
|
|
review: review,
|
|
refund: refund,
|
|
delivery: delivery,
|
|
getByMyself: getByMyself,
|
|
}
|
|
}
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面加载
|
|
*/
|
|
onLoad(options) {
|
|
// 获取协议ID
|
|
this.agreementId = options.id
|
|
// 加载协议内容
|
|
this.loadAgreementContent()
|
|
},
|
|
|
|
methods: {
|
|
// 加载协议内容
|
|
loadAgreementContent() {
|
|
if (!this.agreementId) {
|
|
return
|
|
}
|
|
// 根据ID匹配协议内容
|
|
this.content = this.agreementContent[this.agreementId] || ''
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style lang="scss" scoped>
|
|
.container {
|
|
padding: 30rpx;
|
|
min-height: 100vh;
|
|
}
|
|
|
|
.agreement-content {
|
|
font-size: 28rpx;
|
|
line-height: 1.8;
|
|
color: #333;
|
|
|
|
h2 {
|
|
font-size: 36rpx;
|
|
font-weight: bold;
|
|
margin: 30rpx 0 20rpx;
|
|
color: #333;
|
|
}
|
|
|
|
h3 {
|
|
font-size: 32rpx;
|
|
font-weight: bold;
|
|
margin: 24rpx 0 16rpx;
|
|
color: #333;
|
|
}
|
|
|
|
p {
|
|
font-size: 28rpx;
|
|
line-height: 1.8;
|
|
margin: 12rpx 0;
|
|
color: #666;
|
|
}
|
|
}
|
|
|
|
.empty {
|
|
text-align: center;
|
|
padding: 100rpx 0;
|
|
color: #999;
|
|
font-size: 28rpx;
|
|
}
|
|
</style>
|