IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> mars3dApp开发——如何使用路由传参 -> 正文阅读

[游戏开发]mars3dApp开发——如何使用路由传参


前言

mars3d App首页搜索模块遇到了有关路由传参的一些问题在此记录一下。


提示:以下是本篇文章正文内容,下面案例可供参考

一、使用场景

1、搜索页输入关键词,点击搜索到搜索结果页面
2、搜索结果页面,点击“附近”到附近数据列表页面,
3、点击 要在目标点附近搜索的类型(美食,加油站等等),显示搜索结果。
在上述场景中使用到了router.push()router.replace()进行路由传参。

二、router.push()和router.replace()

1.router.replace()

在场景1中,我门只需要根据输入的关键词查询出结果,选择查询出的地点时,需要将该目标点的一些数据传递到查询结果页面显示出来,但是在查询结果页面点击返回时不需要将原生数据保留,所以我们使用router.replace()

router.replace()本质是替换路由,没有历史记录,点击返回,会跳转到上上一个页面

使用GaodePOI查询出结果代码如下

const queryGaodePOI = new mars3d.query.GaodePOI({
    // key: ['ae29a37307840c7ae4a785ac905927e0'],
  })

// 查询
export function search(keyWords: string) {
  queryGaodePOI.query({
    count: 10, // count 每页数量
    text: keyWords, //关键字
    success: function (res) {
      console.log(res)
    },
    error: function (msg) {
      console.log(msg)
    }
  })
}

search-home.vue传递参数:

 router.replace({
    name: "search-result",
    query: {
      point: JSON.stringify({ 
      key: key,
      name: name, 
      address: address, 
      type: type,
      postions: postions,
      photos: photosUrl 
       })
    }
  })

search-result 接收参数

const point = reactive(JSON.parse(route.query.point as string))

2.router.push()

在搜索页面需要查看该目标点周围的一些目标,点击返回时,查询结果的页面显示的数据不能丢失,所以这这个时候就使用router.push()
router.push()本质是向history栈中添加一个路由,在我们看来是切换路由,但本质是在添加一个history记录

代码如下(示例):

  router.push({
  name: "nearby", 
  query: 
  { name: point.name, postions: point.postions } 
  })

三、使用VueRouter之query与params两种传参区别

1.首先就是写法得不同,query 得写法是 用 path 来编写传参地址,而 params 得写法是用 name 来编写传参地址,你可以看一下编写路由时候得相关属性,你也可以输出一下 路由对象信息 看一下

2.接收方法不同, 一个用 query 来接收, 一个用 params 接收 ,总结就是谁发得 谁去接收

3.query 在刷新页面得时候参数不会消失,而 params 刷新页面得时候会参数消失,可以考虑本地存储解决

4.query 传得参数都是显示在url 地址栏当中,而 params 传参不会显示在地址栏

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章      下一篇文章      查看所有文章
加:2022-03-15 22:58:26  更:2022-03-15 23:04:07 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 -2025/1/16 18:00:55-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码