setData()时数据无法局部刷新
发布于 5 年前 作者 luochao 20294 次浏览 来自 问答

同一个页面下,进行视图切换或者点击事件,视图层数据加载出错

如下:

点击提交后:

源码:

//.js

//.wxml

<form class=“form” bindsubmit=“formSubmit” bindreset=“formReset”>  

    <view class=“ch-box”>

        <text class="">请选择标签</text>

    </view>  

    <checkbox-group bindchange=“checkboxChange” class=“check-box” name=“checkbox”>

        <label class=“checkbox” wx:for="{{items}}" wx:key="*this">

            <checkbox value="{{item.name}}" checked="{{item.checked}}"/>{{item.value}}

        </label>

    </checkbox-group>

    <view class=“advice-box”>

        <textarea class=“advice” bindblur=“bindTextAreaBlur” auto-height placeholder=“写下您的宝贵意见,我们将尽快改进,投诉问题将尽快解决” name=“textarea” />

    </view>

    <view class=“submit-btn”>

        <button class=“btn” formType=“submit” type=“default” size="{{defaultSize}}" loading="{{loading}}" plain="{{plain}}"

        disabled="{{disabled}}" hover-class=“other-button-hover”> 提交 </button>

    </view>

</form>

诚心求教!

4 回复

问题已经解决,被官方文档误导了╭(╯^╰)╮。

 wx:key="*this"改成 wx:key="this"就行了

如下:

data:{

    a:{

        b:{

            c:‘值’

        }

    },

    aa:{

    }

}

重新设置c值时:this.setData({‘a.b.c’:‘新值’});

键名是当前要设置的路径字符

回到顶部