Im работает на веб-сайте в метеор. Я только начал работать с контроллерами, но не могу понять, как получить нажатие кнопки, например.Метеор получить событие в железе: контроллер маршрутизатора
У меня есть следующий temnplate:
<template name="login">
<form>
<input type="email" name="loginEmail">
<input type="password" name="loginPassword">
<input type="submit" class="login" value="Login">
</form>
</template>
И мой контроллер:
LoginController = RouteController.extend({
template: 'login',
'click .login': function(e, t) {
alert('submit button is clicked');
}
});
Теперь, когда я нажимаю кнопку отправки перезагружается страницу и передает все данные в URL. это совсем не то, что я хочу. Я хочу, чтобы предупреждение появилось.
Я не знаю, с чего начать, и я думаю, что это имеет какое-то отношение к тому, что я не понимаю, как использовать контроллеры. Перед использованием контроллеров это сработало:
Template.login.events({
'submit form': function(event){
event.preventDefault();
var emailVar = event.target.loginEmail.value;
var passwordVar = event.target.loginPassword.value;
Meteor.loginWithPassword(emailVar, passwordVar);
console.log('loggin in');
}
});
Итак, как я мог добиться того же самого в моем контроллере? Или я должен сделать для этого метод?
Примечания: Я использую железо: маршрутизатор для вызова контроллера:
Router.route('/login', {
name: 'login',
controller: 'LoginController'
});
Неа, еще перегрузки. вы уверены, что это подходящее место для этого внутри контроллера? –
нет права, не понимал, что вы не сможете получить шаблонные события, которые, как мне кажется, в контроллере маршрутов, вам все равно придется использовать функцию шаблонов событий 'Template.login.events'. И, вероятно, еще «event.preventDefault();« Я обновлю свой ответ – Guillaume
Спасибо за обновление. Все еще есть проблема. если я хочу использовать Template.login.event Мне нужно импортировать как шаблон входа, так и пакет Template. Но я думаю, что я не хочу делать это внутри RouterController, так как я не хочу импортировать файл шаблона внутри контроллера. Так должен ли я сделать отдельный файл клиента для обработки событий и т. Д.? –