当前位置:首页 > uni-app

uniapp多页面搭建

2026-02-06 10:31:03uni-app

多页面应用配置

pages.json中配置多个页面路径,每个页面需包含pathstyle属性。例如配置首页和详情页:

{
  "pages": [
    {
      "path": "pages/index/index",
      "style": { "navigationBarTitleText": "首页" }
    },
    {
      "path": "pages/detail/detail",
      "style": { "navigationBarTitleText": "详情页" }
    }
  ]
}

页面路由跳转

使用uni.navigateTo实现保留当前页面的跳转,目标页面可通过uni.navigateBack返回:

uni.navigateTo({
  url: '/pages/detail/detail?id=123'
})

使用uni.redirectTo关闭当前页面并跳转,无法返回原页面:

uni.redirectTo({
  url: '/pages/login/login'
})

页面间通信

通过URL参数传递简单数据:

uniapp多页面搭建

// 发送方
uni.navigateTo({
  url: '/pages/detail/detail?title=测试数据'
})

// 接收方
onLoad(options) {
  console.log(options.title) // 输出"测试数据"
}

复杂数据建议使用全局变量、Vuex或本地存储:

// 使用uni.setStorageSync存储
uni.setStorageSync('sharedData', { key: 'value' })

// 目标页面读取
const data = uni.getStorageSync('sharedData')

分包加载配置

pages.json中通过subPackages配置分包,减少主包体积:

{
  "subPackages": [
    {
      "root": "packageA",
      "pages": [
        { "path": "page1", "style": { ... } },
        { "path": "page2", "style": { ... } }
      ]
    }
  ]
}

页面生命周期管理

每个页面需正确处理生命周期事件,例如onLoadonShow

uniapp多页面搭建

export default {
  onLoad(options) {
    // 页面创建时执行
  },
  onShow() {
    // 页面显示时执行
  },
  onUnload() {
    // 页面卸载时清理资源
  }
}

公共组件复用

创建可复用组件并全局注册,在components目录新建文件:

// components/example.vue
<template>
  <view>{{ message }}</view>
</template>

<script>
export default {
  props: ['message']
}
</script>

在页面中直接使用:

<template>
  <example message="公共组件内容"/>
</template>

条件编译处理

针对不同平台进行条件编译,使用特殊注释语法:

// #ifdef H5
console.log('仅在H5平台执行')
// #endif

// #ifdef MP-WEIXIN
console.log('仅在微信小程序执行')
// #endif

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

相关文章

uniapp消息推送

uniapp消息推送

uniapp消息推送实现方法 uniapp支持多种消息推送方式,包括uniPush、个推、极光推送等。以下为常见实现方案: uniPush(官方推荐) uniapp官方提供的推送服务,基于DClou…

uniapp样式库

uniapp样式库

uniapp 常用样式库推荐 uView UI uView 是专为 uniapp 设计的多端兼容 UI 框架,提供丰富的组件和工具类。支持 Vue3 组合式 API,内置主题定制功能,常用于快速构建企…

uniapp使用axios无法请求

uniapp使用axios无法请求

uniapp中使用axios请求问题解决方案 在uniapp中使用axios可能会遇到跨域、请求失败或兼容性问题。以下是常见原因及解决方法: 检查axios安装与引入 确保已正确安装axios:…

uniapp 后门

uniapp 后门

关于 uniapp 后门的问题,目前没有权威证据表明 uniapp 官方存在故意植入后门的行为。但作为开发者,需注意以下安全实践: 检查第三方插件和依赖 确保项目中使用的第三方插件来源可靠,定期更新…

uniapp 目录

uniapp 目录

uniapp 目录结构 uniapp 的目录结构遵循 Vue.js 项目的规范,同时包含一些特有的文件和目录。以下是典型的 uniapp 项目目录结构及其说明: project-name/ ├──…

uniapp接入

uniapp接入

接入UniApp的基本流程 UniApp是一个基于Vue.js的跨平台开发框架,支持一次开发,多端发布。以下是接入UniApp的基本流程: 环境准备 确保已安装Node.js(建议版本12+)和HB…