【问题标题】:vue-strap alert component takes up space even when hiddenvue-strap alert 组件即使隐藏也占用空间
【发布时间】:2018-03-26 00:56:22
【问题描述】:

我在 Vue 2.5.16 组件中使用 wffranco/vue-strap 警报:

<accordion :one-at-atime="true" type="info">
    <panel type="primary" :header="'Week ' + cycle.week + ': ' + cycle.name" v-for="(cycle, index) in cycles" :key="cycle.id">
        <alert :type="alerts[cycle.id] ? alerts[cycle.id].type : 'error'" v-if="alerts[cycle.id] !== null">
            {{ alerts[cycle.id] ? alerts[cycle.id].msg : '' }}
        </alert>
        <form v-on:submit.prevent="update">
            <label :for="'location_' + cycle.id">Location</label>
            ....various other elements...
        </form>
    </panel>
</accordion>

即使v-if="alerts[cycle.id] !== null" 隐藏了警报,它仍然占用页面中的垂直空间,如下所示(我使用 Vue JS Chrome 开发扩展突出显示了空间):

如何防止警报占用垂直空间?

【问题讨论】:

  • 你能发布一个可运行的 sn-p 来重现这个错误吗?然后我们可以更好地帮助您。

标签: javascript vue.js vuejs2 vue-strap


【解决方案1】:

我不知道为什么,但你总是可以添加一个包装来隐藏它。 &lt;template&gt; 可以用作空包装器。

...
<template v-if="alerts[cycle.id] !== null">
        <alert ...>
            ...
        </alert>
</template>
...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-29
    • 2015-07-25
    • 2011-11-26
    • 2011-04-11
    • 1970-01-01
    相关资源
    最近更新 更多