privacy.uvue 2.8 KB
Newer Older
1 2 3 4
<template>
  <view class="dialog-container">
    <view class="dialog-content">
      <text style="text-align: center;margin-top: 20px;font-size: 20px;"> 个人信息保护指引</text>
5 6 7 8 9
      <scroll-view style="flex: 1;align-content: center;" show-scrollbar="false">
        <rich-text style="font-size: 14px;margin: 26px;" :nodes="htmlString" @itemclick="itemClick"></rich-text>
      </scroll-view>
      <button class="button" @click="reject">不同意</button>
      <button class="button" type="warn" open-type="agreePrivacyAuthorization" @click="agree">同意</button>
10 11 12 13 14 15 16 17 18 19
    </view>
  </view>
</template>
<script>
  import { openSchema } from '@/uni_modules/uts-openSchema'

  export default {
    data() {
      return {
        number: 0,
DCloud-yyl's avatar
DCloud-yyl 已提交
20
        htmlString: '<span >欢迎使用Hello uni-app x,我们将通过<strong><a href="https://hx.dcloud.net.cn/license">《用户服务协议》</a></strong>及相关个人信息处理规则帮助你了解我们如何收集、处理个人信息。根据《常见类型移动互联网应用程序必要个人信息范围规定》。同意《基本功能数据处理规则》仅代表你同意使用浏览、搜索、下载等主要功能收集、处理相关必要个人信息及数据。此外,为了向你提供更多丰富、优质的服务,我们可能在你使用本产品的过程中提供电商购物、财经支付等扩展功能,如果你拒绝提供,你可能无法使用相应的扩展服务,但不影响你使用我们的基础服务。我们通过</span><strong><a href="https://doc.dcloud.net.cn/markdown-share-docs/2e766f9cf1f8ca009c11875e447de5c8/">《隐私政策》</a></strong><span>帮助你全面了解我们的服务及收集、处理个人信息的详细情况。</span>'
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
      }
    },
    unmounted() {
      uni.offPrivacyAuthorizationChange(this.number)
    },
    onLoad() {
      this.number = uni.onPrivacyAuthorizationChange((callback) => {
        uni.showToast({
          title: 'isPrivacyAgree:' + !callback.needAuthorization
        })
      })
    },
    methods: {
      agree() {
        uni.closeDialogPage({
DCloud-WZF's avatar
DCloud-WZF 已提交
36
          dialogPage: this.$page
37 38 39 40 41
        })
      },
      reject() {
        uni.resetPrivacyAuthorization()
        uni.closeDialogPage({
DCloud-WZF's avatar
DCloud-WZF 已提交
42
          dialogPage: this.$page
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
        })
      },
      itemClick(e : RichTextItemClickEvent) {
        let ref = e.detail.href
        if (ref != null) {
          openSchema(ref)
        }
      },
    }
  }
</script>
<style>
  .dialog-container {
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3);
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .dialog-content {
    height: 60%;
    width: 80%;
    background-color: #fff;
    border-radius: 6px;
  }

  .mt-10 {
    margin-top: 10px;
  }
74 75 76 77 78 79

  .button {
    border: 0px;
    border-radius: 0px;
    font-size: 16px;
  }
80
</style>