App.vue 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <script>
  2. const config = require('./static/config.js');
  3. export default {
  4. onLaunch: function() {
  5. let href = location.href;
  6. let code = this.getQueryString('code');
  7. if(!code){
  8. let url = href.split('#')[0];
  9. url = encodeURIComponent(url);
  10. url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid="+config.appid+"&redirect_uri="+url+"&response_type=code&scope=snsapi_userinfo&state=123&connect_redirect=1#wechat_redirect"
  11. window.location.href = url;
  12. }
  13. this.globalData.BASE_URL = config.BASE_URL;
  14. },
  15. onShow: function() {
  16. let shareToken = this.getQueryString('shareToken');
  17. let projectId = this.getQueryString('projectId');
  18. this.globalData.projectId = projectId||'';
  19. this.globalData.shareToken = shareToken||'';
  20. this.regist();
  21. document.body.style.setProperty("background-color",this.globalData.color4);
  22. },
  23. onHide: function() {
  24. },
  25. methods: {
  26. getThemeInfo() {
  27. },
  28. getQueryString(name){
  29. var reg = new RegExp("(^|\\?|&)"+ name +"=([^&]*)(\\s|&|$)", "i");
  30. return reg.test(location.href) ? unescape(RegExp.$2.replace(/\+/g, " ")) : ""
  31. },
  32. async regist() {
  33. let code = this.getQueryString('code');
  34. let ret = await this.$myRequest({
  35. url: "/regist",
  36. data: {
  37. "code": code,
  38. "shareToken":this.globalData.shareToken||"",
  39. "projectId":this.globalData.projectId||"",
  40. }
  41. });
  42. if (ret.data.success) {
  43. let userId = ret.data.single.userId;
  44. this.globalData.userId = userId;
  45. if (ret.data.single.authed == 1) {
  46. let token = ret.data.single.token;
  47. this.globalData.token = token
  48. }
  49. uni.$emit('request')
  50. }
  51. },
  52. },
  53. globalData: {
  54. token: "",
  55. userId:"",
  56. projectId:"",
  57. shareToken:"",
  58. color1: "#F07423",
  59. color2: "#FD8F3C",
  60. color3: "#FFC444",
  61. color4: "#F5F5F7",
  62. color5: "#F7A98E",
  63. color6: "#FFF4EB",
  64. color7:"#F8BA91",
  65. color8:"#FFF4EB",
  66. color9:"#8B654D",
  67. color10:"#FCF6F1",
  68. BASE_URL:"https://dm-api.elab-plus.cn",//默认环境
  69. }
  70. }
  71. </script>
  72. <style>
  73. </style>