微信小程序 城市点击后跳转 并首页显示被点击城市

在微信小程序中,渲染出城市列表后,如何点击城市,就跳转回到首页,并在首页显示所点击的城市呢?

目录

一、定义点击城市的事件

二、首页的处理


首页:点击成都市会跳转到城市列表

城市列表:点击某个城市回首页,并展示 被点击城市到首页

点击后

城市列表的渲染实现请看另一篇博文:微信小程序按字母顺序渲染城市 功能实现详细讲解-CSDN博客

一、定义点击城市的事件

1、city.wxml

设置data-city 自定义属性用来存放城市名。

javascript 复制代码
<block wx:for="{{citiesByPre}}" wx:key="pre">
  <view class="title">{{item.title}}</view>
  <view class="cityArea">
    <block wx:for="{{item.cities}}" wx:key="id">
      <text class="item" bindtap="onCityClick" data-city="{{item.city_name}}">{{item.city_name}}</text>
    </block>
  </view>
</block>

2、city.js

javascript 复制代码
  onCityClick: function (e) {
    const cityName = e.currentTarget.dataset.city; // 获取点击的城市名
    wx.navigateBack({
      delta: 1, // 返回上一个页面
      success: function () {
        // 回到首页后,将城市名传递到首页
        const pages = getCurrentPages(); // 获取当前栈中的页面
        console.log("当前", pages); // 打印页面栈,查看页面实例
        const indexPage = pages[pages.length - 1]; // 获取 index 页面实例
        indexPage.setData({
          selectedCity: cityName // 设置返回页面的城市名
        });
      }
    });
  },
  1. dataset获取点击的城市名
  2. wx.navigateBack() 是微信小程序提供的 API,用于返回到上一个页面,success 回调函数会在返回操作完成后执行。
  3. getCurrentPages() 是微信小程序提供的 API,用于获取当前页面栈。它返回一个数组,数组中的每个元素表示当前页面栈中的一个页面实例。
  4. pages[pages.length - 1] 是当前页面(栈顶页,当前正在展示的页面)
  5. setData() 是小程序中的方法,用于更新页面的数据。

**pages**打印出来如下 :

二、首页的处理

1、index.js

javascript 复制代码
Page({
  data: {
    selectedCity: '' // 用来存储选中的城市名
  },
});

2、index.wxml

javascript 复制代码
  <navigator url="/pages/city/city">
    <text>当前城市:{{selectedCity || '成都市'}}</text>
  </navigator>
相关推荐
2501_933907216 小时前
宁波小程序开发服务与技术团队专业支持
科技·微信小程序·小程序
sheji341615 小时前
【开题答辩全过程】以 基于微信小程序的少儿编程学习平台为例,包含答辩的问题和答案
学习·微信小程序·小程序
const_qiu17 小时前
微信小程序自动化测试100%通过率实践
微信小程序·小程序
Greg_Zhong21 小时前
小程序中登出/切换/重置页面状态的使用
小程序
一字白首21 小时前
微信小程序进阶实战:从 UI 组件库到全局状态管理全解DAY05
ui·微信小程序·小程序
海石1 天前
微信小程序开发02:原始人也能看懂的着色器与视频处理
前端·微信小程序·视频编码
li9056632802 天前
hanzi-writer-miniprogram Path2D问题以及Bug修复
微信小程序·bug
土土哥V_araolin2 天前
双迪大健康新零售系统开发要点
小程序·个人开发·零售
2501_915909062 天前
不用越狱就看不到 iOS App 内部文件?使用 Keymob 查看和导出应用数据目录
android·ios·小程序·https·uni-app·iphone·webview
CHU7290352 天前
扭蛋机盲盒小程序前端功能设计及核心玩法介绍
前端·小程序