問題
- android限定でパスワードが入力できないと報告があった
- 開発端末では再現しない
問題のコード
<input type="password"
([value])="pass"
(input)="pass = $event.target.value"
placeholder="パスワードをご入力ください">
色々おかしいだろ的な指摘は置いておいて。。。。
調査
- 日本語入力モードだと、変換候補が出る前に入力が確定されてマスク処理されていた
- android6以降が多かったので仮想デバイスで動かしてみたら、ソフトウェアキーボードが表示されないIMEを発見
原因
- 根本的な原因は不明だが、inputイベントが悪さをしていたようだった
対処
- changeイベントに変更したところ、自動で入力が確定されることがなくなった
<input type="password"
(change)="pass = $event.target.value"
placeholder="パスワードをご入力ください">
感想
- angular難しい。webviewアプリ辛い。