main.js 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import App from './App'
  2. import store from '@/store/index.js'; // 引入vuex
  3. Vue.prototype.$store = store
  4. import common from 'static/js/common.js';
  5. Vue.prototype.$dialog = common;
  6. // 全局挂载getPhoneNumber方法,供生服插件调用
  7. Vue.prototype.getPhoneNumber = function({ params, success, fail }) {
  8. console.log("获取手机号码",params,success,fail)
  9. // 获取生服插件传递的加密参数
  10. const { iv, encryptedData } = params
  11. // 调用您的服务端接口,按照抖音官方解密规则解密encryptedData得到用户手机号
  12. // 解密规则参考:https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/guide/open-capabilities/acquire-phone-number-acquire/
  13. const result = {
  14. phoneNumber: '13xxxxxxxxx'
  15. }
  16. // 回调通知生服插件获取手机号成功
  17. success(result)
  18. }
  19. // #ifndef VUE3
  20. import Vue from 'vue'
  21. import './uni.promisify.adaptor'
  22. Vue.config.productionTip = false
  23. App.mpType = 'app'
  24. const app = new Vue({
  25. ...App,
  26. store
  27. })
  28. app.$mount()
  29. // #endif
  30. // #ifdef VUE3
  31. import { createSSRApp } from 'vue'
  32. export function createApp() {
  33. const app = createSSRApp(App)
  34. app.config.globalProperties.getPhoneNumber = ({ params, success, fail }) => {
  35. console.log("获取手机号码",params,success,fail)
  36. const { iv, encryptedData } = params
  37. // 调用您的服务端接口解密encryptedData获取手机号
  38. // 参考官方解密规则完成处理
  39. success({ phoneNumber: '13xxxxxxxxx' })
  40. }
  41. return {
  42. app
  43. }
  44. }
  45. // #endif