微信小程序--hidden不生效缘由及解决方案

微信官方文档里有提到说hidden是全部组件都有的属性,但我实际编码中发现并非这样的!!!!微信

例如以下布局:ide

<view hidden="true" style="display:flex;flex-direction: row;">
        <text>text1</text>
        <text>text2</text>
    </view>

你会发现hidden没生效。经我实验发现hidden元素对块状布局才生效,因此这段代码里致使hidden没生效的罪魁祸首是display:flex。把这个去掉就能够了。布局

若是必定要用flex布局怎么办?flex

其实这里想用hidden无非就是想影藏这个布局,display:none也能作到隐藏。这里能够用一个取巧的方法,动态设置display属性,示例以下:编码

<view hidden="true" style="display:{{hideview ? none : flex}};flex-direction: row;">
        <text>text1</text>
        <text>text2</text>
    </view>

这里的hideview是在对应的js里是一个变量,由js来动态控制。debug

后话code

hidden 隐藏布局,虽然隐藏了,可是仍是会占空间。 display:none 隐藏不占据空间。component

相关文章
相关标签/搜索