[Développement WeChat] Le petit programme this.setData({}) attribue des valeurs à des champs, des tableaux et des objets de tableau ordinaires, et opère sur des objets de tableau

Avant-propos :

        Lors du développement d'un système récemment, this.setData a toujours des problèmes parfois. J'ai vérifié les informations et les ai résumées :

  1. affectation sur le terrain ;
  2. Affectation statique de tableau ;

  3. Affectation dynamique de tableau ;

  4. Affectation dynamique d'un tableau d'objets ;

  5. Objets de groupe sur lesquels opérer

        ① Ajoutez des données à la fin ;

        ② Ajoutez des données au milieu ou au début ;

        ③ Supprimer les données ;

Regardez directement le code :

Maintenant la définition des données :

    testText : '',

    testTextArray : ['A','B','C','D','E'],

    testTextArrayOfObject : [
      {
        title : 'title_1',
        content : '舞台上的刘德华~刘德华~',
      },
      {
        title : 'title_2',
        content : '你是我的观音菩萨,我是你的刘德华',
      },
      {
        title : 'title_3',
        content : '再看一眼就会爆炸哦~',
      },
      {
        title : 'title_4',
        content : '衣服包包给你换新的',
      },
    ],

En opération onLoad :

        

  1. affectation sur le terrain ;
        //字段赋值
        this.setData({
          testText : 'abc'
        })
        console.log("赋值过后的testText : ", this.data.testText);

  2. Affectation statique de tableau ;

        //数组静态赋值1
        this.setData({
          'testTextArray[0]' : 'Xxx'
        })
        console.log("数组静态赋值过后的testTextArray1 : ", this.data.testTextArray);
    
        //数组静态赋值2
        this.setData({
          ['testTextArray[1]'] : 'XXXX'
        })
        console.log("数组静态赋值过后的testTextArray2 : ", this.data.testTextArray);

  3. Affectation dynamique de tableau ;

        //数组动态赋值1:
        for(var i = 0 ; i < this.data.testTextArray.length ; i ++){
          this.setData({
            ['testTextArray[' + i + ']'] : 'X'
          })
        }
        console.log("数组动态赋值1过后的testTextArray : ", this.data.testTextArray);
    
        //数组动态赋值2:
        for(var i = 0 ; i < this.data.testTextArray.length ; i ++){
          let content = 'testTextArray[' + i + ']';
          this.setData({
            [content] : 'Y'
          })
        }
        console.log("数组动态赋值2过后的testTextArray : ", this.data.testTextArray);

 Ensuite, vérifiez dans le débogueur :

        5. Objets de groupe à exploiter

                ① Ajoutez des données à la fin ;

    //数组对象进行操作 -- 末位加数据
    let testArray = {title : '敬请期待!',content : '新神诞生~'};
    this.setData({
      testTextArrayOfObject : this.data.testTextArrayOfObject.concat(testArray)
    })
    console.log("数组对象进行操作 -- 末位加数据 过后的testTextArray : ", this.data.testTextArrayOfObject);

                ② Ajoutez des données au milieu ou au début ;


    //数组对象进行操作 -- 开头加数据
    let testArray_1 = [{title : '敬请期待!',content : '新神诞生~'}];
    this.setData({
      testTextArrayOfObject : testArray_1.concat(this.data.testTextArrayOfObject)
    })
    console.log("数组对象进行操作 -- 末位加数据 过后的testTextArray : ", this.data.testTextArrayOfObject);

                ③ Supprimer les données ;

    //数组对象进行操作 -- 删除数据
    let index = 0;
    this.data.testTextArrayOfObject.splice(index , 1);//第一个是要删除数据的索引,第二个是需要删除数据的数量
    console.log("数组对象进行操作 -- 删除数据 过后的testTextArray : ", this.data.testTextArrayOfObject);

Ensuite, vérifiez dans le débogueur :

 

Je suppose que tu aimes

Origine blog.csdn.net/weixin_57788079/article/details/130216937
conseillé
Classement