收藏
回答

js生成的详情页地址怎么写?

例如从接口返回的数据

var cont=res.data;

通常小程序前端也就是wx:for={{cont}}进行循环获取,地址写法:

<navigator url='../detail/detail?id={{item.id}}&pic={{item.pic}}&title={{item.title}}' hover-class="navigator-hover">

这没问题!!!

如果js里写跳转地址:

detailTo: function (e) {

    wx.navigateTo({

      url: "../detail/detail?id=" + item.id+"&pic="+item.pic+"&title="+item.title

    });

  },

这里再用item.id、item.pic、item.title就不对了,因为没参与循环,这里的item.id、item.pic、item.title该怎么替换呢?

回答关注问题邀请回答
收藏

1 个回答

  • Mr.Zhao
    Mr.Zhao
    2020-02-09

    这跟循环有什么关系,要啥参数就传什么,你item都没定义当然不行了。data-了解一下

    2020-02-09
    有用
    回复 7
    • 恒宇J
      恒宇J
      2020-02-09
      嗯,搞懂了,这样就可以把数据库里复杂的文案先在这里转义一次再跳转,详情页显示就没问题了对吧
      2020-02-09
      回复
    • Mr.Zhao
      Mr.Zhao
      2020-02-09回复恒宇J
      动手试试
      2020-02-09
      回复
    • 恒宇J
      恒宇J
      2020-02-09回复Mr.Zhao
      用js函数转义成这样子了,啥整,还得继续用js转吗?
      2020-02-09
      回复
    • Mr.Zhao
      Mr.Zhao
      2020-02-09回复恒宇J
      不知道你在说什么
      2020-02-09
      回复
    • 恒宇J
      恒宇J
      2020-02-09回复Mr.Zhao
      function replaceSpecialChar(url) {
        url = url.replace(/"/g, '"');
        url = url.replace(/&/g, '&');
        url = url.replace(/</g, '<');
        url = url.replace(/>/g, '>');
        url = url.replace(/ /g, ' ');
        //url = url.replace(/

      /g, '');
        console.log("转义字符", url);
        return url;
      }
      我在上面加了一个函数,用来转义那篇内容,结果"&转成了html,那些html还得继续用js来转还是有别的什么办法呢?

      2020-02-09
      回复
    查看更多(2)
登录 后发表内容
问题标签