Evento do componente pai para o filho

Eu tenho um evento que é gerado no componente pai e o filho precisa reagir a ele. Eu sei que essa abordagem não é recomendada emvuejs2 e eu tenho que fazer uma$root emitir o que é muito ruim. Então, meu código é esse.

<template>
    <search></search>
    <table class="table table-condensed table-hover table-striped" v-infinite-scroll="loadMore" infinite-scroll-disabled="busy" infinite-scroll-distance="10">
        <tbody id="trans-table">
            <tr v-for="transaction in transactions" v-model="transactions">
                <td v-for="item in transaction" v-html="item"></td>
            </tr>
        </tbody>
    </table>
</template>

<script>
    import Search from './Search.vue';

    export default {
        components: {
            Search
        },
        data() {
            return { 
                transactions: [], 
                currentPosition: 0 
            }
        },
        methods: {
            loadMore() {
                this.$root.$emit('loadMore', {
                    currentPosition: this.currentPosition
                });
            }
        }
    }
</script>

Como você pode verloadMore é acionado em rolagem infinita e o evento está sendo enviado para a pesquisa de componentes filho. Bem, não apenas a pesquisa, mas como a raiz está sendo transmitida para todos.

Qual é a melhor abordagem para isso. Eu sei que devo usar adereços, mas não sei como posso fazer isso nessa situação.

questionAnswers(1)

yourAnswerToTheQuestion