首页 > 解决方案 > 如何在 Angular 中显示从后端到前端的错误验证

问题描述

如何在 Angular 中显示从后端到前端的错误验证???

我显示了电影标题错误验证,但不知道如何显示电影的评论验证。

这是我的model.js

const ReviewSchema = new mongoose.Schema({
    name: {
        type: String,
        required: [true, "Customer name is required"],
        minlength: [3, "Customer name must be a minimum of 3 characters"]
    },
    stars: {
        type: Number,
        required: true
    },
comment: {
    type: String,
    required: [true, "Review is required"],
    minlength: [3, "Review must be a minimum of 3 characters"]
}
})

这是我的controllers.js:

createMovie: function (req, res) {
    Movie.create(req.body, (error, data) => {
        if (error) {
            res.json({
                message: "Error!",
                error: error,
            });
        } else {
            res.json({
                message: "Success!",
                added: true,
                data: data
            });
        }
    })
},

这是我的 components.ts:

error = "";

  onSubmit() {
    let observable = this._httpService.createMovie(this.newMovie);
    observable.subscribe((data: any) => {
      if (data.error) {
        this.error = data.error;
        this._router.navigate(["movies/new"]);
      } else {
        this.getMoviesFromService();
        this._router.navigate([""]);
      }
    });
  }

这是我从后端显示电影标题错误验证的方式。有人可以帮我解决这个问题吗?

标签: angularmongodbexpress

解决方案


请在您的控制器中添加一个 console.log(error) 并查看其中的内容。我记得我不太确定,但 error.data.message 会有验证消息。因此,在响应中,您必须将其发送到前端。然后,您可以根据需要显示它。


推荐阅读