Я пытаюсь выяснить, как использовать оператор-express-validator вместе с angularjs и html для отображения ошибок проверки. Моя проблема заключается в невозможности получить доступ к ошибкам . См. Код ниже.Как отображать ошибки экспресс-валидатора с использованием угловых?
routes.js
router.post('/register', function(req, res){
var name = req.body.name;
var email = req.body.email;
var username = req.body.username;
var password = req.body.password;
var password2 = req.body.password2;
req.checkBody('name', 'Name is required').notEmpty();
req.checkBody('email', 'Email is required').notEmpty();
req.checkBody('email', 'Email not valid').isEmail();
req.checkBody('username', 'Username is required').notEmpty();
req.checkBody('password', 'Password is required').notEmpty();
req.checkBody('password2', 'Passwords does not match').equals(req.body.password);
var errors = req.validationErrors();
if(errors){
res.render('register.html', {
errors: errors
});
} else {
console.log('no errors');
}})
Я нашел то, что, как представляется, проблема, в моем server.js. Это, кажется, вызывает проблемы между экспресс-и угловыми маршрутами, что делает экспресс-маршрутизацию неудачной и поэтому не передает данные по мере необходимости. Смотри ниже.
app.use(function(req, res){
res.sendFile(__dirname + '/app/index.html');
});
app.use('/', routes);
app.use('/user', users);
Если я попробую это, см. Ниже.
app.use('/', routes);
app.use('/user', users);
app.use(function(req, res){
res.sendFile(__dirname + '/app/index.html');
});
Это делает экспресс преходящие маршрутизации данных, как я хочу, но, кажется, моя угловая маршрутизация будет пристанет, когда я обновить page- вид не удается правильно загрузить.
Тем не менее, я не знаю, как отображать это, используя ejs или handlebars, но это не соответствует моим потребностям, должен быть способ хранения ошибок с угловым и отображения его с html как-то правильно?
Любая помощь приветствуется!
Вы должны иметь возможность ответить с помощью res.json ({errors: errors}) и использовать массив ошибок с угловой стороны с ng-repeat. Вы сталкиваетесь с проблемами с этим? –
@TalhaAwan Спасибо, но я попробовал его, перейдя в ng-repeat = «err in errors», он ничего не получает:/ – Dennis