Vue.jsで@keydown.enterを使った場合safariで日本語の変換確定時のエンターに反応してしまう
以下のように@keydown.enter
だとsafariのときに変換確定時にhandleEnterが呼ばれる
<template> <div id="app"> <input name="text" @keydown.enter="handleEnter"> </div> </template> <script> export default { name: "App", components: {}, methods: { handleEnter: () => { console.log("enter"); } } }; </script>
@keypress.enter
を使えば変換確定時は呼ばれない
<template> <div id="app"> <input name="text" @keypress.enter="handleEnter"> </div> </template> <script> export default { name: "App", components: {}, methods: { handleEnter: () => { console.log("enter"); } } }; </script>