当前位置:首页 > uni-app

uniapp登录首页

2026-03-05 01:45:54uni-app

实现UniApp登录首页的方法

页面结构设计

创建一个login.vue文件作为登录页面,使用<template>定义页面布局。常用组件包括<view>容器、<input>输入框和<button>按钮。示例结构:

<template>
  <view class="login-container">
    <input v-model="username" placeholder="请输入用户名"/>
    <input v-model="password" placeholder="请输入密码" password/>
    <button @click="handleLogin">登录</button>
  </view>
</template>

数据绑定与事件处理

<script>中定义响应式数据和登录逻辑。通过v-model实现双向数据绑定,使用methods处理登录事件:

uniapp登录首页

<script>
export default {
  data() {
    return {
      username: '',
      password: ''
    }
  },
  methods: {
    handleLogin() {
      if (!this.username || !this.password) {
        uni.showToast({ title: '请填写完整信息', icon: 'none' });
        return;
      }
      // 调用登录API示例
      uni.request({
        url: 'https://api.example.com/login',
        method: 'POST',
        data: { username: this.username, password: this.password },
        success: (res) => {
          if (res.data.code === 200) {
            uni.setStorageSync('token', res.data.token);
            uni.reLaunch({ url: '/pages/home/index' });
          }
        }
      });
    }
  }
}
</script>

样式优化

通过<style>添加样式增强用户体验,建议使用弹性布局适应不同设备:

<style>
.login-container {
  padding: 40rpx;
  display: flex;
  flex-direction: column;
}
input {
  height: 80rpx;
  margin-bottom: 30rpx;
  border-bottom: 1rpx solid #eee;
}
button {
  background-color: #007AFF;
  color: white;
}
</style>

路由配置

pages.json中配置登录页为首页,并设置页面样式:

uniapp登录首页

{
  "pages": [
    {
      "path": "pages/login/login",
      "style": {
        "navigationBarTitleText": "登录"
      }
    }
  ]
}

登录状态验证

App.vueonLaunch中检查本地存储的token,自动跳转主页(避免重复登录):

<script>
export default {
  onLaunch() {
    const token = uni.getStorageSync('token');
    if (token) {
      uni.reLaunch({ url: '/pages/home/index' });
    }
  }
}
</script>

第三方登录集成

支持微信登录需调用uni.login获取code,示例代码:

methods: {
  wechatLogin() {
    uni.login({
      provider: 'weixin',
      success: (res) => {
        uni.request({
          url: 'https://api.example.com/wechat-auth',
          data: { code: res.code }
        });
      }
    });
  }
}

标签: 首页uniapp
分享给朋友:

相关文章

uniapp安装axios

uniapp安装axios

安装axios 在uniapp项目中安装axios需要确保项目支持node_modules管理。通过npm或yarn安装axios: npm install axios # 或 yarn add a…

uniapp视频

uniapp视频

uniapp视频开发基础 uniapp支持通过video组件实现视频播放功能,该组件兼容多端(H5、小程序、App等),基本用法如下: <template> <video…

uniapp 用法

uniapp 用法

uniapp 基本概念 uniapp 是一个基于 Vue.js 的跨平台开发框架,支持编译到 iOS、Android、H5 及小程序等多端。其核心特点是“一次开发,多端发布”,通过条件编译实现平台差异…

重构uniapp

重构uniapp

重构 Uniapp 项目的关键方法 代码结构优化 将页面、组件、静态资源按功能模块划分,避免全部堆放在根目录。建议采用以下结构: src/ ├── components/ // 通用组件…

uniapp 数据

uniapp 数据

uniapp 数据管理方法 本地存储 使用 uni.setStorageSync 和 uni.getStorageSync 进行本地数据持久化存储。适合保存用户偏好设置或小型数据。 // 存储数…

uniapp定位描述

uniapp定位描述

uniapp定位功能实现 uniapp提供了多种定位方式,包括H5、小程序和App端的定位功能。通过uni.getLocation方法可以获取设备当前位置信息。 基本定位方法 使用uni.getLo…