Виджет <ais-state-results>
содержит запасной контент , который отображается, когда слот по умолчанию пуст (это скриншот, который вы дали). Оба условия, которые вы написали в своем примере, ложны после запуска приложения. Поскольку в слоте ничего не отображается, включается значение по умолчанию. Вы можете решить эту проблему с пустым div
, если ни одно из условий не выполнено. Вот пример:
<ais-state-results>
<template slot-scope="{ query, hits }">
<!-- First condition -->
<p v-if="!hits.length">Not found for: <q>{{ query }}</q></p>
<!-- Second condition -->
<ais-hits v-else-if="query" />
<!-- Fallback condition -->
<div v-else />
</template>
</ais-state-results>
Вы можете найти живой пример на CodeSandbox .