12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- // app.ts
- import { api_login, api_queryUserInfo } from "./api/login";
- const config = require("./config");
- App<IAppOption>({
- globalData: {
- // 在客服页面使用
- top: 0, // 初始的上偏移
- baseUrl: config?.baseUrl,
- appId: "",
- deviceNum: "", // 设备信息
- isLogin: false, // 是否登录
- userInfo: {} as any,
- },
- onLaunch() {
- // 展示本地存储能力
- // const logs = wx.getStorageSync('logs') || []
- // logs.unshift(Date.now())
- // wx.setStorageSync('logs', logs)
- this.setAppId();
- // 登录
- wx.login({
- success: async (res) => {
- this.onLogin(res.code);
- },
- });
- },
- setAppId() {
- //获取当前小程序appId
- const accountInfo = wx.getAccountInfoSync();
- this.globalData.appId = accountInfo.miniProgram.appId;
- // wxRequest.config.appid = accountInfo.miniProgram.appId;
- //先设置appid再引入接口文件,防止appid未更新问题
- // require("./utils/request/api.js");
- // 获取设备信息
- const deviceInfo = wx.getDeviceInfo();
- // 品牌 设备型号 操作系统及版本 客户端平台
- const deviceNum =
- deviceInfo.brand +
- "-" +
- deviceInfo.model +
- "-" +
- deviceInfo.platform +
- "-" +
- deviceInfo.system;
- this.globalData.deviceNum = deviceNum;
- // 设置客服初始位置
- const systemInfo = wx.getWindowInfo();
- this.globalData.top = systemInfo.windowHeight - 180;
- },
- // userInfoReadyCallback(result) {
- // console.log(result, 'result')
- // }
- /** 微信登录 */
- async onLogin(code: string) {
- wx.showLoading({
- mask: true,
- title: "加载中...",
- });
- try {
- // 开始登录
- const { data } = await api_login({
- autoRegister: false,
- client_id: "cooleshow-student-wxlite",
- client_secret: "cooleshow-student-wxlite",
- deviceNum: this.globalData.deviceNum,
- extra: "",
- grant_type: "password",
- loginType: "WECHAT_MA",
- multiUser: false,
- username: this.globalData.appId,
- password: code,
- });
- if (data.code === 200) {
- const userToken = data.data.token_type + " " + data.data.access_token;
- wx.setStorageSync("token", userToken);
- this.globalData.isLogin = true;
- const users = await api_queryUserInfo({
- wxAppId: this.globalData.appId,
- });
- if (users.data.code === 200) {
- this.globalData.userInfo = users.data.data;
- } else {
- wx.removeStorageSync("token");
- this.globalData.isLogin = false;
- }
- console.log(users);
- } else {
- this.globalData.isLogin = false;
- }
- } catch {}
- wx.hideLoading();
- },
- });
|