Acredito que houve um engano no código do exercício pois a variavel frase é declarada como uma string vazia no data() e não há nenhum evento no input que (ex.: @input ="frase = $event.target.value") para passar os dados digitados na view para a variável frase.
Então quando a função der o alert em frase ela vai estar vazia, como sempre esteve, nunca foi alterada.