• 小程序var that=this


      小程序的js函数中,一般第一句就是var that=this,那么此语句的必要性是什么呢?下面用一段代码来解释这个问题

    Page({
      //页面的初始数据
      loadUsers: function () {
        var that=this
        data:{
          questionId:null;
          title:null
        }
        wx.request({
          url:'http://0.0.0.0:5000/question/type=2/2',
          method:'get',
          success:function(res){
            console.log(res.data)
            var d=res.data['data']
            that.setData({
              questionId:d['questionId'],
              title:d['title']})
            console.log(this.data.questionId)
          }
        })
      },
    

      这段程序报错:Cannot read property 'questionId' of undefined

      这是因为在javascript语言中,this代表着当前的对象,它在程序中随着执行的上下文随时会变化。当原本的loadUsers函数中调用其它接口比如wx.request或success:function时,this就不再代表loadUsers函数,因此就不能由this找到之前定义的data。this包含了当时页面的初始值,state,以及当前你自己定义的函数。解决方法就是用一个that记录loadUsers函数中的这些内容,从而能在接口中使用这些值。

  • 相关阅读:
    多维梯度下降
    梯度下降
    三种评价函数
    Gluon sgd
    Gluon.vision的几类数据集
    Gluon Data API
    Gluon 实现 dropout 丢弃法
    AlexNet 分类 FashionMNIST
    LeNet 分类 FashionMNIST
    LeNet
  • 原文地址:https://www.cnblogs.com/luozx207/p/9400133.html
Copyright © 2020-2023  润新知