gpt4 book ai didi

javascript - Angular JS 中的 Promise 对象未呈现错误

转载 作者:行者123 更新时间:2023-12-03 00:28:41 25 4
gpt4 key购买 nike

我是 Angular 新手,正在尝试从 Angular JS 中的 Promise 对象检索自定义错误。但我没有在 html 上找回自定义错误。我做错了什么?

这是我的 HTML 文件 -

<!DOCTYPE html>
<html ng-app="myApp">

<head>
<script data-require="angular.js@*" data-semver="4.0.0" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.10/angular.min.js"></script>
<script data-require="angular.js@*" data-semver="4.0.0" src="script.ts"></script>
<script data-require="angular.js@*" data-semver="4.0.0" src="system.config.js"></script>
<script data-require="angular.js@*" data-semver="4.0.0" src="tsconfig.json"></script>
<script src="script.js"></script>
</head>

<body>
<div ng-controller="myCtrl">
<div>{{message}}</div>
<div>{{error}}</div>
<div>Name: {{user.name}}</div>
<div>Location: {{user.location}}</div>
<div>
<img ng-src="{{user.avatar_url}}" title="{{user.name}}">
</div>
</div>
</body>

这是我的脚本文件(script.js) -

(function(){
angular.module('myApp', []).controller('myCtrl', function($scope, $http) {
$http.get("https://api.github.com/users/rohitj559")
.then(function(response){
$scope.user = response.data;
})
.then(function(reason){
$scope.error = "Could not fetch the user"
});

})}());

当我将 url(api 信息)更改为不正确的 url 地址时,我需要将错误渲染回我的 html。

最佳答案

这是根据同行建议得出的答案 -

(function(){
angular.module('myApp', []).controller('myCtrl', function($scope, $http) {
$http.get("https://api.github.com/users/rohitj559")
.then(function(response){
$scope.user = response.data;
})
.catch(function(reason){
$scope.error = "Could not fetch the user"
});

})}());

解决方案 - 将第二个“then”替换为“catch”。

关于javascript - Angular JS 中的 Promise 对象未呈现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53962827/

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