<view id="{{list.id||id}}" class="hlist {{list.listClass||list.class}}" > <block wx:if="{{util.isArray(list.data)}}"> <block wx:for="{{list.data}}" wx:key="__key"> <template is="itemContent" data="{{item, type: list.type}}" /> </block> </block> <!-- <template is="listContent" data="{{collects: list.data, list}}" /> --> </view> |
自己封装的列表组件,会触发修改样式及内容
确定listClass一定有值'width: 100%;',给view加上wx:if="{{list.listClass}}" 后,模板正常
列表子元素样式正常,确定是类'list-normal'的子元素样式
数据正常
更新方法为
that.setData({ 'list.listClass': 'list-normal', 'list.data': [...] }) |
问题表现:列表容器的样式类list-normal,在开发者工具中看上去丢失了,导致容器样式无效,但子元素有效

{{list.listClass||list.class}}这是个判断语法,返回的是boolean类型,按你的setData的数据来开,你应该改成class="hlist {{list.listClass}}"这样就是字符串了。