$ emit não aciona eventos filho

Para um projeto VueJS 2.0, tenho o seguinte no componente pai

<template>
<child></child>
<button @click="$emit('childEvent)"></button>
</template>

no componente filho eu tenho:

{
  events: { 'childEvent' : function(){.... },
  ready() { this.$on('childEvent',...) },
  methods: { childEvent() {....} }
}

Nada parece funcionar ao clicar no botão. É necessário criar um método pai que seria emitido para o filho? Eu estava usando o vuejs 1. mas agora estou confuso sobre a maneira como as comunicações entre pais e filhos funcionam

questionAnswers(5)

yourAnswerToTheQuestion