main.js 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. import App from './App'
  2. // #ifndef VUE3
  3. import Vue from 'vue'
  4. import store from "@/store/index.js"
  5. import './uni.promisify.adaptor'
  6. import uView from '@/uni_modules/uview-ui'
  7. import "./utils/permission.js"
  8. import {
  9. $http
  10. } from "@escook/request-miniprogram"
  11. uni.$http = $http
  12. // 请求的根路径
  13. $http.baseUrl = "https://pro.cloud.boyuantech.net/manage"
  14. // $http.baseUrl = "https://test.cloud.boyuantech.net/manage"
  15. // 请求拦截器
  16. $http.beforeRequest = function(options) {
  17. // uni.showLoading({
  18. // title: '数据加载中...',
  19. // mask: true,
  20. // })
  21. // console.log(options);
  22. options.header = {
  23. Token: uni.getStorageSync('Token')
  24. }
  25. }
  26. // 响应拦截器
  27. $http.afterRequest = function(err) {
  28. console.log(err.errMsg);
  29. if (err.errMsg == 'request:fail ') {
  30. console.log(1)
  31. uni.showToast({
  32. icon: 'error',
  33. title: '无网络'
  34. })
  35. }
  36. // if (err.errMsg) {
  37. // console.log('无网络');
  38. // uni.showToast({
  39. // icon: 'error',
  40. // title: '无网络'
  41. // })
  42. // uni.hideLoading()
  43. // return
  44. // }
  45. // uni.hideLoading()
  46. if (err.data.code === 2000) {
  47. uni.removeStorageSync('Token')
  48. uni.showToast({
  49. title: '令牌过期,请重新登录',
  50. icon: 'none',
  51. duration: 2000
  52. })
  53. uni.removeStorageSync('Token')
  54. // uni.hideLoading()
  55. uni.redirectTo({
  56. url: "/pages/login/login"
  57. })
  58. return
  59. }
  60. }
  61. // (response) => {
  62. // // console.log(response,'1');
  63. // const {
  64. // success,
  65. // msg,
  66. // data
  67. // } = response.data
  68. // // 要根据success的成功与否决定下面的操作
  69. // console.log(success,msg,data);
  70. // if (success) {
  71. // return data
  72. // } else {
  73. // // 业务已经错误了 还能进then ? 不能 ! 应该进catch
  74. // console.log(response.data.msg);
  75. // return Promise.reject(new Error(message))
  76. // }
  77. // }, error => {
  78. // error 信息 里面 response的对象
  79. // if (err.data.code === 2000) {
  80. // uni.showToast({
  81. // title: '令牌过期,请重新登录',
  82. // icon: 'none',
  83. // duration: 2000
  84. // })
  85. // // uni.hideLoading()
  86. // uni.redirectTo({
  87. // url: "/pages/login/login"
  88. // })
  89. // } else {
  90. // console.log(error.msg); // 提示错误信息
  91. // }
  92. // return Promise.reject(error)
  93. // }
  94. // 封装弹框的方法
  95. uni.$showMsg = function(title = '数据请求失败!', duration = 1500) {
  96. uni.showToast({
  97. title,
  98. duration,
  99. icon: 'none',
  100. mask: true
  101. })
  102. }
  103. Vue.use(uView);
  104. Vue.config.productionTip = false
  105. App.mpType = 'app'
  106. const app = new Vue({
  107. ...App,
  108. store
  109. })
  110. app.$mount()
  111. // #endif
  112. // #ifdef VUE3
  113. import {
  114. createSSRApp
  115. } from 'vue'
  116. export function createApp() {
  117. const app = createSSRApp(App)
  118. return {
  119. app
  120. }
  121. }
  122. // #endif