zoukankan      html  css  js  c++  java
  • 学习旧岛小程序 (5) observer 函数中修改属性的值

    不要在一个属性的 observer  函数中修改属性的值 不然会造成内存泄露

    错误代码:

      properties: {
        /* 期刊号 */
        index: {
          type: String,
          observer: function (newVal, oldVal, changedPath) {
            // 属性被改变时执行的函数(可选),也可以写成在methods段中定义的方法名字符串, 如:'_propertyChange'
            // 通常 newVal 就是新设置的数据, oldVal 是旧数据
            /*当index数据类型为number时,这样处理不行,因为小程序会自动转化。而string类型又因为会无限递归,而报错所以我们在data中定义一个新的_index
            数据给他赋值,注意使用_index时,你组件的{{}}中调用的也必须时{{_index}}而不是{{index}}*/
            let val = newVal < 10 ? '0' + newVal : newVal
            this.setData({
              index: val
            })
            console.log(newVal)
            console.log(oldVal)
          }
        }
      },

    效果:

  • 相关阅读:
    学习之路
    c
    为什么正确,还是有点bug?
    1212
    学习呀
    记录一下学习c语言的过程3.26日1
    字符串处理
    二维数组的转置
    一维数组转置
    Mybatis读取数据实战
  • 原文地址:https://www.cnblogs.com/guangzhou11/p/11294876.html
Copyright © 2011-2022 走看看