uni-app写的微信小程序如何实现账号密码登录后获取token,并且每天的第一次登录后都会直接获取参数而不是耀重新登录(2)

接uni-app写的微信小程序如何实现账号密码登录后获取token,并且每天的第一次登录后都会直接获取参数而不是耀重新登录(1),

在main.js中

复制代码
import App from './App'

// #ifndef VUE3
import Vue from 'vue'
import './uni.promisify.adaptor'
Vue.config.productionTip = false
App.mpType = 'app'

const app = new Vue({
  ...App
})
app.$mount()
// #endif

// #ifdef VUE3
import { createSSRApp } from 'vue'
export function createApp() {
  const app = createSSRApp(App)
  return {
    app
  }
}
// #endif

async function checkAndLogin() {
  const token = uni.getStorageSync('token');
  const username = uni.getStorageSync('userName');
  const password = uni.getStorageSync('userPassword');

  if (!token) {
    try {
      const response = await request({
        url: '/login',
        method: 'POST',
        data: { username, password }
      });

      if (response.token) {
        uni.setStorageSync('token', response.token);
      } else {
        throw new Error('用户名或密码不正确');
      }
    } catch (error) {
      uni.showModal({
        title: '登录失败',
        content: error.message || '用户名或密码不正确',
        showCancel: false,
      });
    }
  }
}

// 在 App.vue 或 main.js 中调用 checkAndLogin
async function onLaunch() {
  await checkAndLogin();
}

在pages.json

创建一个空的{

"path": "pages/login/login",

"style": {

"navigationBarTitleText": "登录"

}

},

让路径为pages/login/login里面什么内容都没有,这样保证每次进入的第一个页面都是空白页面

复制代码
"pages": [
		{
			"path": "pages/login/login",
			"style": {
				"navigationBarTitleText": "登录"
			}
		},
		{
			"path": "pages/mine/mine",
			"style": {
				"navigationBarTitleText": "我的"
			}
		},
		{
			"path": "pages/home/home",
			"style": {
				"navigationBarTitleText": "首页"
			}
		},
		{
			"path": "pages/Operation/Operation",
			"style": {
				"navigationBarTitleText": "运维"
			}
		},
		{
			"path": "pages/index/index",
			"style": {
				"navigationBarTitleText": "服务"
			}
		},
		{
			"path" : "pages/shebe/shebe",
			"style" : 
			{
				"navigationBarTitleText" : "设备"
			}
		}
	],
	"globalStyle": {
		"navigationBarTextStyle":"black",
		"navigationBarBackgroundColor": "#fff",
		"navigationBarTitleText": "uni-app",
		"backgroundColor": "#F8F8F8",
		"enablePullDownRefresh": true,
		"navigationStyle": "custom"

	},
	"uniIdRouter": {},
	"tabBar": {
		"custom": true,
		"color": "#7A7E83",
		"selectedColor": "#1296db",
		"borderStyle": "black",
		"backgroundColor": "#F8F8F8",
		"list": [
			{
				"pagePath": "pages/home/home",
				"text": "首页",
				"iconPath": "static/imgs/imgs55.png",
				"selectedIconPath": "static/imgs/imgs5.png"
			},
			{
				"pagePath": "pages/Operation/Operation",
				"text": "运维",
				"iconPath": "static/imgs/imgs66.png",
				"selectedIconPath": "static/imgs/imgs6.png"
			},
			{
				"pagePath": "pages/shebe/shebe",
				"text": "设备",
				"iconPath": "static/imgs/imgs66.png",
				"selectedIconPath": "static/imgs/imgs6.png"
			},
			{
				"pagePath": "pages/index/index",
				"text": "服务",
				"iconPath": "static/imgs/imgs11.png",
				"selectedIconPath": "static/imgs/imgs1.png"
			},
			{
				"pagePath": "pages/mine/mine",
				"text": "我的",
				"iconPath": "static/imgs/imgs44.png",
				"selectedIconPath": "static/imgs/imgs4.png"
			}
		]
	},"subPackages": true,
	"noParse": [],
	"subPackages": [
		{
				"root": "pagesA/",
				"pages":[
					{
						"path": "login/login",
						"style": {
							"navigationBarTitleText": "登录",
							// 启⽤⾃定义导航栏
							"navigationStyle": "custom",
							// 将导航栏⽂字的颜⾊设置为⽩⾊
							"navigationBarTextStyle": "white"
						}
					}
				]
				
		}
		]
相关推荐
冬奇Lab14 小时前
一天一个开源项目(第247篇):wxa-runner —— 让小程序在普通浏览器里用微信官方基础库跑起来,直接接 Playwright 做无头 E2E
微信小程序·开源
andrsted16 小时前
练题簿在线免费刷题:让整理过的资料,变成能反复练习的题库
学习·微信小程序·小程序·学习方法·刷题·1024程序员节
paopaokaka_luck18 小时前
心理咨询管理系统(WebSocket实时沟通、基于用户的协同过滤、 ECharts多维分析、 预约业务流程、预约校验与定时处理)
java·vue.js·spring boot·mysql·spring·echarts·1024程序员节
漫天转悠1 天前
Vue3白屏排查实录-Transition与多根模板
vue.js·1024程序员节
hudie7651 天前
LikeShop 二开最常改的 5 个文件(附改前改后对比)
前端·uni-app·php·个人开发
jason.zeng@15022071 天前
Nginx 配置详解(静态 HTML、下载目录、API 反向代理三套场景)
java·vue.js·1024程序员节
Bug收容所1 天前
Vue+JS Day3
前端·javascript·vue.js·前端框架·1024程序员节
梅雅达编程笔记1 天前
Day 17 | uni-app 小程序:前端从零搭建
微信小程序·typescript·uni-app·vue3·pinia·前端开发·全栈
一渊之隔2 天前
uniapp BLE 开发踩坑:小米手机数据接收截断问题排查全记录
智能手机·uni-app
阿俊-全栈开发2 天前
LikeShop 单商户标准版 UniApp 端二开:页面组件复用与自定义主题适配
uni-app·likeshop开源商城·likeshop单商户标准版·多商户源码