微信小程序实现跳转详情页面

本文实例为大家分享了微信小程序实现跳转详情页面的具体代码,供大家参考,具体内容如下

我们要实现如下的效果,进入详情页,获取产品的具体数据。本文请求的数据是本地的,实际开发是要通过ajax请求服务器中的产品数据,为了避免业务代码扰乱视听,只截取了关键代码

1.首先我们需要两个页面,一个首页(就是产品列表页),一个详情页(产品的具体数据页)

首页wxml代码:

这里举例的是传id到详情页,这样详情页才知道我们需要加载的是哪个产品,也可以传index下标,不过感觉id更靠谱些。(id是你产品列表里面的数据,渲染列表时拿到的)

 <!-- bindtap绑定的是首页跳转函数, data-XX="这里绑定的是要传到详情页的数据" (这里的传的id) -->
 <view  bindtap="skipTravelDetails" data-id="{{id}}">
     <view>
         <image  src="{{article.imgArray[0]}}"/>
     </view>
</view>

2.首页js代码:

skipTravelDetails:function(e){
        let id=e.currentTarget.dataset.id //获取点击产品时拿到的id,就是data-id传过来的值
        // wx.navigateTo跳转页面的方法
        //URL是传递的是详情页的路径,把id拼接传过去就可以啦
        wx.navigateTo({
            url: "./sonPage/details?id="+id,
        })
    }

3.详情页wxml代码:

这里面就是你想要生成的页面内容,数据的显示,结构按需求自己写~

<!-- photoImg就是需要渲染的数据 -->
<view>
    <image src="{{photoImg}}" />
</view>

4.详情页js代码:

data: {
    phptoImage: "",//匹配的数据
    imgList: [{
        id: 1,
        images: ["/images/a.jpg", "/images/chengDu.jpg", "/images/ac.jpg"]
      }, {
        id: 2,
        images: ["/images/chengDu.jpg", "/images/a.jpg"]
      }, {
        id: 3,
        images: ["/images/chongQing.jpg", "/images/chengDu.jpg"]
      } ]  // 本地数据
  },

  onLoad: function (options) {
    // options.id 就是首页传过来的id,接下来循环找到id所匹配的数据就可以进行渲染啦!
    this.data.imgList.forEach(item => {
      if (options.id == item.id) {
        this.setData({
          phptoImage: item.images
        })
      }
    })
  },

总结:整个操作就一个点击bindtap点击事件,和详情页onload生命周期函数就可以实现啦,它在页面加载的时候进行触发,并可以通过(options)参数获取到跳转链接上面的辨识符(id),再通过(this.setData)把值(photoImage)更新显示就完成了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 微信小程序 跳转页面的两种方法详解

    微信小程序 跳转页面 小程序页面有2种跳转,可以在wxml页面或者js中: 1,在wxml页面中: <navigator url="../index/index">跳转到新页面</navigator> <navigator url="../index/index" open-type="redirect">在当前页打开</navigator> <navigator url="../i

  • 微信小程序 详解页面跳转与返回并回传数据

    微信小程序 详解页面跳转与返回并回传数据 A页面: .wxml文件 <view class="flex-wrp"> <text style="width: 32%;">选择城市</text> <input style="width: 68%;" type="text" bindtap="city" placeholder="请选择城市" valu

  • 微信小程序实现点击文字页面跳转功能【附源码下载】

    本文实例讲述了微信小程序实现点击文字页面跳转功能.分享给大家供大家参考,具体如下: 1.效果展示 2.关键代码 index.js文件 Page({ data:{ // text:"这是一个页面" }, onLoad:function(options){ // 页面初始化 options为页面跳转所带来的参数 }, onReady:function(){ // 页面渲染完成 }, onShow:function(){ // 页面显示 }, onHide:function(){ // 页面

  • 微信小程序 页面跳转和数据传递实例详解

    微信小程序 页面跳转和数据传递 1.先导 在Android中,我们Activity和Fragment都有栈的概念在里面,微信小程序页面也有栈的概念在里面.微信小程序页面跳转有四种方式: 1.wx.navigateTo(OBJECT): 2.wx.redirectTo(OBJECT): 3.wx.switchTab(OBJECT): 4.wx.navigateBack(OBJECT) 5.使用实现对应的跳转功能: 分析: 其中navigateTo是将原来的页面保存在页面栈中,在跳入到下一个页面的时

  • 微信小程序实现跳转的几种方式总结(推荐)

    今天把实现微信页面的跳转的几种方法总结分享下 1.使用导航组件,标签,页面链接来实现(可以发现点击时有背景) <!-- sample.wxml --> <view class="btn-area"> <navigator url="../my/my">跳转到新页面</navigator> </view> 参数如下 2.给页面布局加监听bindtap事件,然后在方法里面,通过wx.navigatorTo来实现

  • 微信小程序出现wx.navigateTo页面不跳转问题的解决方法

    本文实例讲述了微信小程序出现wx.navigateTo页面不跳转问题的解决方法.分享给大家供大家参考,具体如下: 今天在做微信小程序的时候,做的商品购买流程.流程是这样的: 商品展示-->商品详情-->下单页面-->下单详情页面-->支付结果页面-->跳转订单详情页面. 但是在支付成功之后,点击按钮跳转,发现怎么也跳转不了到订单详情页面,前后log都能打印出来,证明已经执行了wx.navigateTo方法,但是跳转不成功,而且,坑爹的是也不报错. 翻看微信小程序开发文档,参考

  • 微信小程序按钮点击跳转页面详解

    微信小程序中,按钮也是<button></button>标签,它通过bindtap属性绑定点击事件: 然后在js里面注册这个回调函数: 回调函数里面通过 wx.navigateTo({ url: '/pages/index/talkPage', }) 跳转到talkPage界面. 注意,html界面要在app.json里面注册: 不注册的话会报错:navigateTo:fail url "pages/index/talkPage" is not in app.j

  • 微信小程序链接传参并跳转新页面

    像传统的传参一样,只是在微信里面的标签不一样而已,navigator标签的文档说明: https://mp.weixin.qq.com/debug/wxadoc/dev/component/navigator.html?t=20161122 下面是传递参数并展示新页面的一个简单栗子: 这是index.wxml代码: <navigator class="bury-wrapper wx-li" url="../detail/detail?id={{name.id}}&quo

  • 微信小程序 页面跳转传参详解

    微信小程序 页面跳转传参,做微信小程序必定会用的这样的功能,这里就记录下本人学习实现代码资料. 刚接触微信小程序,多里面的语法和属性还不怎么聊解,如有不多的地方希望各位大神多多指教.今天来说下微信小程序怎么跳转和传参,话不多说直接上代码. 实现的功能是给列表增加点击功能传参到下一页: 代码如下: <import src="../WXtemplate/headerTemplate.wxml"/> <view> <!--滚动图--> <view&g

  • 微信小程序跳转到其他网页(外部链接)的实现方法

    个人类型和海外类型的小程序不支持 web-view 标签  也就是说个人申请的小程序,就别想跳转了!!!! 1.开发的时候,我们难免碰到要跳转到其他网页中去那该怎么实现呢? 2.例如我想点击一个按钮,跳转到百度(百度的网页还是在小程序中打开) 3.wxml 1. index.wxml   (按钮页面) <view class='wrapper'> <button class='wepay' bindtap='goBaidu'>点击跳转</button> </vie

随机推荐