< 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}}"这样就是字符串了。