超级无敌所向披靡大坏蛋 2024-07-24 05:44 采纳率: 0%
浏览 11

如何将当前页面data里的值以value形式wx.navigateto传递到另一个页面

img

假设当前sort值为1,此时用过navigateTo传递sort值为1到下一个页面

  • 写回答

2条回答 默认 最新

  • 阿里嘎多学长 2024-07-24 08:36
    关注

    以下内容由AIGC及阿里嘎多学长共同生成、有用望采纳:


    根据您提供的图片和需求,您希望在微信小程序中使用wx.navigateTo方法将当前页面的data对象中的sort属性值传递到另一个页面。从图片中可以看到,sort值是通过事件触发时从数据绑定的元素中获取的,然后通过setData方法更新到页面的data对象中。

    以下是根据您提供的代码片段修改后的示例,展示如何将sort值传递到另一个页面:

    1. 修改triggers方法,以确保sort值被正确传递:
    Page({
      data: {
        sort: "" // 初始sort值
      },
      triggers: function(e) {
        // 从事件对象中获取sort值
        let sortValue = e.currentTarget.dataset.sort;
        
        // 更新页面data中的sort值
        this.setData({
          sort: sortValue
        });
    
        // 构建跳转URL,将sort值作为查询参数附加到URL上
        let url = '../answer/answer?sort=' + encodeURIComponent(sortValue);
        
        // 执行页面跳转,并将sort值作为参数传递
        wx.navigateTo({
          url: url
        });
      }
    });
    
    1. 在目标页面(answer页面)中接收传递的sort
    Page({
      onLoad: function(options) {
        // options参数包含了页面路径中的查询参数
        if (options.sort) {
          let receivedSort = decodeURIComponent(options.sort);
          console.log("接收到的sort值是:", receivedSort);
          
          // 接下来可以根据receivedSort进行页面逻辑处理
          // 例如,设置页面的data属性或调用其他函数
        }
      }
    });
    

    注意事项:

    • 使用encodeURIComponent函数对sort值进行编码,以确保URL的参数部分正确处理特殊字符。
    • 使用decodeURIComponent函数对接收的sort值进行解码,以还原其原始值。
    • 确保url变量中的路径与目标页面的路径一致。

    以上代码示例应该满足您的需求,将当前页面的sort值传递到微信小程序的另一个页面。如果有任何问题或需要进一步的帮助,请随时告诉我。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 7月24日