Действие на вход в ember
В любом случае для этого ввода текста
<input type="text" aria-controls="existing-user-table" placeholder="Search">
чтобы вызвать действие на контроллере, когда пользователь нажимает Enter?
Я не люблю вставлять его в тег формы или создавать кнопку, только это текстовое поле ввода.
Ответы
Ответ 1
Используйте помощник {{input}}
- если вы включите параметр действия, он вызовет это действие на контроллере, когда пользователь попадет в поле ввода. Итак:
{{input action="myAction" aria-controls="existing-user-table" placeholder="Search"}}
input helper api docs не упоминает эту возможность, но помощник просто обертывает Ember.TextField
Также можно активировать действие на keyPress вместо ввода, указав свойство onEvent:
{{input action="myAction" onEvent="keypress" aria-controls="existing-user-table" placeholder="Search"}}
Ответ 2
Помощник ввода имеет действие insert-newline
, которое будет срабатывать, когда пользователь нажимает клавишу ввода.
{{input type='text' aria-controls='existing-user-table' placeholder='Search' insert-newline='myAction'}}
Помощники ввода текста
Вставить документы новой строки
Ответ 3
Из Ember v1.13.0 действие на входном помощнике лишено, мы должны использовать enter
или key-press
вместо action
Обратитесь Ember Docs
{{input value=someValue enter='someAction'}}
это вызовет указанное действие, когда пользователь нажимает ввод на ввод текста