uni-app页面数据传参方式

uni-app 是一个使用 Vue.js 开发所有前端应用的框架,可以编译到 iOS、Android、H5、小程序等多个平台。当你在多个页面间传递参数时,通常有多种方法,例如通过 uni.navigateTo、路由参数、本地存储等方式。下面是一些方法的说明和示例代码。

1. 通过 uni.navigateTo 传参

当你使用 uni.navigateTo 进入新页面时,你可以在新页面的 onLoad 生命周期中获取到传入的参数。

示例代码

页面 A (index.vue)

<template>
<button @click="goToPageB">跳转到页面B</button>
</template>

<script>
export default {
methods: {
goToPageB() {
const data = { name: '张三', age: 20 }; // 这里是你要传递的数据
uni.navigateTo({
url: '/pages/pageB/pageB?data=' + JSON.stringify(data) // 通过URL携带数据
});
}
}
}
</script>

页面 B (pageB/index.vue)

<template>
<div>姓名:{
   { name }},年龄:{
   { age }}</div>
</template>

<script>
export default {
data() {
return {
name: '',
age: ''
};
},
onLoad: function (options) {
const data = JSON.parse(options.data); // 从URL中获取数据
this.name = data.name;
this.age = data.age;
}
}
</script>

2. 通过路由参数传参

如果你使用的是 Vue Router,你可以在路由配置中定义参数,然后在页面中通过 $route.params 获取。

示例代码 (需要先安装和配置 Vue Router)

路由配置 (router.js)

const routes = [
{ path: '/pageB/:data', component: PageB } // :data 是动态段,可以传递任何数据
];

页面 B (PageB.vue)

<template>
<div>姓名:{
   { name }},年龄:{
   { age }}</div>
</template>

<script>
export default {
data() {
return {
name: '',
age: ''
};
},
created() {
const data = this.$route.params.data; // 从路由参数中获取数据,注意是字符串,需要转换回对象或按需处理。这里只是一个简单示例。
const parsedData = JSON.parse(data); // 转换回对象(假设你的数据是JSON格式)
this.name = parsedData.name; // 使用转换后的数据,根据实际情况可能需要进一步处理或映射。
this.age = parsedData.age;
}
}
</script>

3. 通过本地存储(LocalStorage、SessionStorage等)传递数据。

这是一种不太推荐的方法,因为它并不是为了跨页面通信设计的。但它可以在某些场景下作为临时存储手段。例如:在 onLoad 中获取数据,在 onUnload 中保存数据。或者在用户关闭 app 后记住他们的状态等。使用时要注意数据的生命周期和安全性。

相关推荐

  1. uni-app页面数据方式

    2024-01-08 15:48:01       67 阅读
  2. jquery、vue、uni-app、小程序的页面方式

    2024-01-08 15:48:01       50 阅读
  3. uni-app中,实现页面之间

    2024-01-08 15:48:01       37 阅读
  4. Uni-app中实现数据选择并回给上个页面方法

    2024-01-08 15:48:01       37 阅读
  5. uniapp页面方法

    2024-01-08 15:48:01       40 阅读
  6. uniapp 跨页面的几种方式

    2024-01-08 15:48:01       53 阅读
  7. 小程序页面路由方法

    2024-01-08 15:48:01       43 阅读
  8. 小程序页面路由方法

    2024-01-08 15:48:01       30 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-08 15:48:01       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-08 15:48:01       106 阅读
  3. 在Django里面运行非项目文件

    2024-01-08 15:48:01       87 阅读
  4. Python语言-面向对象

    2024-01-08 15:48:01       96 阅读

热门阅读

  1. 服务器常见问题和RAID

    2024-01-08 15:48:01       53 阅读
  2. python&Pandas五:数据分析与统计

    2024-01-08 15:48:01       58 阅读
  3. 力扣labuladong——一刷day87

    2024-01-08 15:48:01       58 阅读
  4. 2024.1.7力扣每日一题——赎金信

    2024-01-08 15:48:01       65 阅读
  5. 【Leetcode】707. 设计链表

    2024-01-08 15:48:01       68 阅读
  6. PHP知识点复习

    2024-01-08 15:48:01       53 阅读
  7. 优化Vue首页加载速度的实用方法

    2024-01-08 15:48:01       76 阅读
  8. C++ stack用法总结

    2024-01-08 15:48:01       66 阅读
  9. 完成python+neo4j+django踩坑记录

    2024-01-08 15:48:01       66 阅读
  10. python-日志模块以及实际使用设计

    2024-01-08 15:48:01       60 阅读