双人余公 2020-04-07 15:55 采纳率: 75%
浏览 1493
已采纳

微信小程序列表跳转详情页面,根据 sitemap 的规则[0],当前页面 [pages/detail/detail?id=%20xxxx] 将被索引,多了一个%20,后面获取失败怎么解决?

我做一个从主页列表跳转到详情界面的微信小程序,主页代码:
wxml

<block wx:for="{{courseList}}" wx:key="index">
<view class="itemCourse" bindtap="goDetail" data-id=" {{item._id}}">
  <text>课程名:{{item.Cname}}\n</text>
  <text>时间:{{item.time}}\n</text>
  <text>学分:{{item.credit}}\n</text>
  <text>教师名:{{item.teacher}}\n</text>
  <text decode="{{true}}">容量:{{item.volume}}     &ensp;剩余量:</text>
</view>
</block>

js

Page({
  //定义一个空数组
  data: {
   courseList: []
  },

  onLoad(){
    wx.cloud.database().collection("course")
      .get()
      .then(res=>{
         console.log("请求成功", res)
         this.setData({   //用箭头函数,则this还是指向page
         courseList: res.data
      })
    })
    .catch(res=>{
      console.log("请求失败", res)
    })
  },


  goDetail(event){
    console.log("点击获取的数据",event.currentTarget.dataset.id)
    wx.navigateTo({
      url: '/pages/detail/detail?id=' + event.currentTarget.dataset.id,
    })

  }
})

详情界面js:

Page({
  data:{
     detail:''
  },

 onLoad(options){ 
   console.log("详情接收的id",options.id)
   wx.cloud.database().collection("course")
     .doc(options.id)
     .get()
     .then(res=>{
        console.log("详情页成功",res)
         this.setData({
         detail:res.data
     })
     })
     .catch(res=>{  
     console.log("详情页失败", res)
     })

 }
})

然后黄色那行id号前面有个%20,到详情接收的id都对,后面失败,我尝试把id写死,没有问题,id号前加上空格就失败,好像是哪里有空格,请问怎么解决
图片说明

  • 写回答

2条回答

      报告相同问题?

      相关推荐 更多相似问题

      问题事件

      • 已采纳回答 10月10日

      悬赏问题

      • ¥15 内存管理的一段代码不是很理解
      • ¥20 打开anaconda时卡在Loading applications无法进入界面
      • ¥15 网页超时时间设置失效
      • ¥15 有关绿色信贷毕业论文的问题
      • ¥30 关于#机器人#的问题,如何解决?
      • ¥15 求MATLAB函数ScalarLayerDisplay的代码
      • ¥15 安卓如何自动执行检测到的NFC标签,无需再点确认
      • ¥15 pyHM库mouse模块的ValueError错误
      • ¥15 python opencv 摄像头 传感器
      • ¥30 eMMC&Android&C&Linux