页面跳转以及用户授权、登录

image.png

格式化

新建一个wxs文件index.wxs


image.png

在需要的文件中导入


image.png

使用


image.png

格式化步骤:

  1. 新建xxx.wxs文件,比如

     // 格式化金额
     function toFixed(num){
       num = (num / 100); 
       return num.toFixed(2);
    }
    
    function formatDate(tiem) {
      // 详细的逻辑
    }
    
    module.exports = {
      toFixed: toFixed,
      formatDate: formatDate
    }
    
  2. 在需要使用wxml文件中导入

    
    
  3. 使用

     
     
         {{F.toFixed(item.minPrice)}}
     
    

授权

image.png

保存token

image.png

request.js的配置

import { baseUrl } from "./config.js";


/**
 * 封装请求
 * url:请求地址
 * data:请求参数
 * method: 请求类型
 */


const request = (url, data, method) => {
  // 获取token,登录时存的
  let token = wx.getStorageSync("token");
  url = baseUrl + url;
  return new Promise((resolve, reject) => {
    // 请求
    wx.request({
      url,
      method,
      data,
      header: {
        "user-token": token
      },
      success: res => {
        if (res.data.code == 666) {
          resolve(res.data);
        } else if (res.data.code == 603) {        
          wx.showModal({
            title: "提示",
            content: "登录已过期,是否重新登录",
            success(res) {
              if (res.confirm) {
                // 跳转到个人中心页面
                wx.switchTab({
                  url: "/pages/my/my"
                });
              } else if (res.cancel) {
                console.log("用户点击取消");
              }
            }
          });
        } else {
          reject(res.data.msg);
        }
      },
      fail: err => {
        reject("网络异常");
      }
    });
  });
};


const get = (url, data) => {
  return request(url, data, "get");
};


const post = (url, data) => {
  return request(url, data, "post");
};


export default {
  get,
  posth
};

需要授权页面 js文件的配置

  login(event) {
    wx.login({
      success: (res) => {
        let { iv, encryptedData, userInfo } = event.detail;
        let url = '/user/login';
        let data = {
          iv, encryptedData, userInfo, code: res.code
        }
        app.$post(url, data).then(res => {
          console.log(res);
          // 把token存入缓存
          let {token} = res.user;
          wx.setStorageSync('token', token);


        }).catch(err => {
          console.log(err);
        })
      }
    })

视图

//xxx.wxml

你可能感兴趣的:(页面跳转以及用户授权、登录)