gpt4 book ai didi

javascript - 格式化从 Laravel API 获取的 AngularJS ng-repeat 文本

转载 作者:行者123 更新时间:2023-12-02 14:40:48 25 4
gpt4 key购买 nike

我有一个 Laravel 5.2 后端 API 和一个 AngularJS 前端,有时我会执行 Laravel 验证,如果验证失败,则会返回错误。

当我迭代错误并将其显示在前端时,我得到如下内容:

["The email has already been taken."]

我也想成为这样的人

The email has already been taken.

没有[""]东西。

我的代码是:

Angular Controller :

if (error.statusText === "Unprocessable Entity") {

$scope.registerErrors = error.data;
}

Angular 模板:

<div class="alert alert-warning animated pulse" ng-if="registerError && isLoading === false">
<p ng-repeat="(error, errorText) in registerErrors">{{errorText}}</p>
</div>

Laravel Controller :

$this->validate($request, [
'firstname' => 'required|max:100|min:3',
'lastname' => 'required|max:100|min:3',
'email' => 'required|email|unique:users|max:255',
]);

控制台.log:

enter image description here

提前致谢!

最佳答案

因为 errorText 包含 email 数组,并且您显示了完整的电子邮件数组。如果电子邮件包含多个错误,则可以尝试像:

<p ng-repeat="(error, errorObject) in registerErrors">
<span ng-repeat=" singleError in errorObject">{{singleError}}</span>
</p>

或者对于单个错误可以尝试:

<p ng-repeat="(error, errorText) in registerErrors">{{errorText[0]}}</p>

或者只分配error.data.email而不是error.data

if (error.statusText === "Unprocessable Entity") {
$scope.registerErrors = error.data.email;
}

关于javascript - 格式化从 Laravel API 获取的 AngularJS ng-repeat 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37035314/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com