App.vue 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. <script>
  2. import { mapActions } from 'vuex'
  3. //https://ext.dcloud.net.cn/plugin?id=22675
  4. import permissionListener from "@/uni_modules/c-permission-listener";
  5. export default {
  6. mixins:[],
  7. // 全端,数据共享,还可以解决页面初始化模板访问不到值得
  8. // 有坑 分包里的页面访问不到
  9. globalData: {},
  10. onLaunch() {
  11. // #ifdef APP-PLUS
  12. // 清除角标数字
  13. plus.runtime.setBadgeNumber(0);
  14. // #endif
  15. // 推送消息监听改在登录成功后注册,见 utils/appDevice.js setupAppPushMessageListener
  16. // 删除缓存
  17. if (process.env.NODE_ENV == 'production') {
  18. uni.removeStorageSync('shopUser')
  19. }
  20. // #ifdef APP-PLUS
  21. const extConfig = {}
  22. // #endif
  23. // #ifdef MP-WEIXIN
  24. const extConfig = wx.getExtConfigSync ? wx.getExtConfigSync() : {}
  25. uni.setStorageSync('account', extConfig.account)
  26. // #endif
  27. },
  28. onLoad(){
  29. },
  30. onShow() {
  31. // #ifdef APP-PLUS
  32. // 清除角标数字
  33. plus.runtime.setBadgeNumber(0);
  34. // #endif
  35. // permissionEnums枚举建议单独一个js文件,然后引入
  36. const permissionEnums = {
  37. "ACCESS_COARSE_LOCATION": {
  38. name: "定位",
  39. explain: "在您主动使用注册填址、门店地图选点、订单导航等功能时获取位置,用于匹配地址或打开地图"
  40. },
  41. "ACCESS_FINE_LOCATION": {
  42. name: "定位",
  43. explain: "在您主动使用注册填址、门店地图选点、订单导航等功能时获取位置,用于匹配地址或打开地图"
  44. },
  45. "CALL_PHONE": {
  46. name: "电话", // 当前权限的名称
  47. explain: "为了方便联系客服, 我们需要申请您设备的拨打电话权限" // 权限说明
  48. },
  49. "CAMERA":{
  50. name:"使用摄像头",
  51. explain: "为了方便给花材拍照片,上传花材图片等"
  52. },
  53. "READ_EXTERNAL_STORAGE":{
  54. name:"读取外部存储空间",
  55. explain:"为了修改个人头像和上传花材图片, 我们需要申请您设备的相机和存储权限",
  56. },
  57. "WRITE_EXTERNAL_STORAGE":{
  58. name:"写入外部存储空间",
  59. explain:"为了保存推广海报和小程序码到手机相册, 我们需要申请您设备的存储权限",
  60. },
  61. "READ_MEDIA_IMAGES":{
  62. name:"读取外部存储空间",
  63. explain:"为了修改个人头像和上传花材图片, 我们需要申请您设备的相机和存储权限",
  64. },
  65. "READ_MEDIA_VIDEO":{
  66. name:"读取外部存储空间",
  67. explain:"为了修改个人头像和上传花材图片, 我们需要申请您设备的相机和存储权限",
  68. },
  69. "READ_MEDIA_AUDIO":{
  70. name:"读取外部存储空间",
  71. explain:"为了修改个人头像和上传花材图片, 我们需要申请您设备的相机和存储权限",
  72. },
  73. "POST_NOTIFICATIONS":{
  74. name:"通知",
  75. explain:"为了及时接收订单等重要消息,我们需要申请通知权限",
  76. },
  77. }
  78. // 唤起权限会触发onHide,所以listenerFunc须在onShow生命周期调用
  79. permissionListener && permissionListener.listenerFunc(permissionEnums)
  80. },
  81. onHide() {},
  82. onError(err) {
  83. console.error(err, '错误捕获')
  84. },
  85. methods: {
  86. ...mapActions(['setUserShopAll'])
  87. }
  88. }
  89. </script>
  90. <style lang="scss">
  91. //没有scss变量方法的,主要引入 这样打包的时候就不会所有的组件都打包进去
  92. @import './static/iconfont/iconfont.css';
  93. @import './static/css/uni2.css';
  94. @import './static/css/base.scss';
  95. @import './static/css/common.scss';
  96. @import './static/css/reset.scss';
  97. page {
  98. height: 100%;
  99. }
  100. /**开单-扎和支切换样式**/
  101. .switchover-unit{
  102. position: fixed;
  103. left: calc(170upx / 2 - 50upx);
  104. bottom: 140upx;
  105. display: flex;
  106. align-items: center;
  107. justify-content: center;
  108. width: 100upx;
  109. height: 100upx;
  110. color: #FFFFFF;
  111. background: #4b8cf4;
  112. border-radius: 50%;
  113. font-size: 42upx;
  114. font-weight: 700;
  115. z-index: 2;
  116. }
  117. /**开单-增加减少动画**/
  118. .animation{animation:imgmove 0.3s 1;animation-iteration-count:1;}
  119. @-webkit-keyframes imgmove{0%{transform: scale(0.7);}100%{transform: scale(1);}}
  120. </style>