美文网首页
页面跳转以及用户授权、登录

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

作者: 稻草人_9ac7 | 来源:发表于2019-11-07 15:10 被阅读0次
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文件中导入

    <wxs src="../../../wxs/index.wxs" module="F"/>
    
  3. 使用

     <text class="ren">¥</text>
     <text class="priceNum">
         {{F.toFixed(item.minPrice)}}
     </text>
    

授权

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
<button open-type="getUserInfo" bindgetuserinfo='login' >登录</button>

相关文章

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

    格式化 新建一个wxs文件index.wxs 在需要的文件中导入 使用 格式化步骤: 新建xxx.wxs文件,比如...

  • spring-security-oauth2认证、资源、客户端服

    概念理解 授权码模式:用户访问应用A,点击微信授权登录,跳转至微信的登录页面,输入用户名和密码,选择授权,则返回A...

  • 注册和登录(关于Cookie)

    需求 我希望用户能够注册 ->注册后跳转到登录页面 -> 登录页面跳转以后跳转到首页显示我的登录密码 注册页面 前...

  • 浅谈一次登录注册与cookie

    需求 我希望用户能够注册 ->注册后跳转到登录页面 -> 登录页面跳转以后跳转到首页显示我的登录密码 完成效果 代...

  • vue中怎样实现 路由拦截器

    当用户没有登录的时候,跳转到登录页面,已经登录的时候,不能跳转到登录页,除非后台token失效(复制登录中的页面链...

  • Django实验记录

    django 要点 1. django 用户认证 用户登录后才可访问页面地址,否则跳转到登录页面(需要在setti...

  • Vue Vuex 菜单&页面权限控制

    需求 用户登录后仅能看到自己权限内的菜单列&页面。 用户强行跳转到不在自己权限内的页面,页面自动跳转到404页面。...

  • 微博三方登录功能

    1.基本代码 微博pc端和h5的三方登录都一样,超级简单 页面跳转到新浪微博的登录页面,授权登录后,跳转回redi...

  • 微信网页授权 ,获取用户基本信息(openID)

    开发步骤 第一步:用户同意授权,获取code 用户同意授权后如果用户同意授权,页面将跳转至 redirect_ur...

  • Angular 使用 Resolve 预先获取组件数据

    这几天碰到一个需求,登录后要根据用户信息的不同跳转到不同的页面。比如默认登录要求跳转到A页面,如果A的页面中表格数...

网友评论

      本文标题:页面跳转以及用户授权、登录

      本文链接:https://www.haomeiwen.com/subject/fgrmbctx.html