- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我的 javascript 文件中,我注意到我的问题出现在 JS 文件的第 19、30 和 35 行。我可以让 responseJson 在 getUserRepos() 函数中登录到控制台,但是如果我尝试将其登录到 displayResults() 函数内部的控制台,则会收到错误。一旦我可以访问它,我就可以循环它并检索完成此作业所需的信息。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" type="text/css" href="main.css">
<title>GitHub User API</title>
</head>
<body>
<header>
<h1>Search for GitHub User Repos</h1>
</header>
<form>
<label for="input"></label>
<input type="text" id="input" class="input" name="input" value="DusVen44">
<input type="submit" value="Search">
</form>
<p class="error-message"></p>
<section id="results" class="hidden">
<h2>Search Results</h2>
<ul class="results-list">
</ul>
</section>
<script src="https://code.jquery.com/jquery-3.5.0.js"
integrity="sha256-r/AaFHrszJtwpe+tHyNi/XCfMxYpbsRg2Uqn0x3s2zc="
crossorigin="anonymous"></script>
<script src="index.js"></script>
</body>
</html>
* {
box-sizing: border-box;
}
.hidden {
display: none;
}
ul {
list-style-type: none;
}
console.log("hey")
let searchInput = $("#input").val();
console.log(searchInput)
let baseURL = "https://api.github.com/users/" + searchInput + "/repos";
console.log(baseURL)
function getUserRepos() {
fetch(baseURL)
.then(response => {
if (response.ok) {
return response.json();
} throw new Error(response.statusText);
})
.then(responseJson => console.log(responseJson))
.then(responseJson => displayResults())//Here is where I'm calling the function
.catch(error => alert("Something went wrong"));
}
function submitForm() {
$("form").submit(function(event) {
event.preventDefault();
getUserRepos();
})
}
//This function works until I try to access responseJson
function displayResults() {
console.log("Hey");
$(".results-list").empty();
$(".results-list").append(`<h1>This is a test</h1>`);
console.log(responseJson);//This causes an error
// responseJson.each(function(data) {
// console.log(data);
// });
// $(".results-list").append(
// `<li><h2>${responseJson[i].name}</h2>
// <h2><a href="${responseJson[i].html_url}</h2>
// </li>`
// )
// };
$("#results").removeClass("hidden");
}
// getUserRepos()
submitForm()
最佳答案
这是因为您没有将responseJson 传递给该函数。 responseJson 仅在 .then 范围内可用。最简单的方法是这样做
.then(responseJson => displayResults(responseJson))
函数显示结果(responseJson){
//你的代码
//console.log(responseJson);
}
//编辑
.then(responseJson => displayResults(responseJson))
可以缩短为
.then(displayResults)
因为您不需要创建箭头函数将responseJson传递给其他函数,只需直接调用即可。
关于javascript - responseJson - 放入函数内部时无法访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61521817/
我以 JSON 格式从 Python Flask 发送数据。我能够获取数据,并在本地托管页面 http://127.0.0.1:5000/ 上的检查器中使用 for 循环。但是,当我将相同的 Java
在我的 javascript 文件中,我注意到我的问题出现在 JS 文件的第 19、30 和 35 行。我可以让 responseJson 在 getUserRepos() 函数中登录到控制台,但是如
这是我从我的 API 获取 JSON 数据的代码。我想做的是在我的 Flatlist 中打印各种药物的名称,然后使该对象可点击,这样我就可以在下一页上显示有关它的更多信息。我可以正确接收 JSON 数
我正在使用 Alamofire 尝试使用 image shack API 将图像放在图像棚服务器上。我没有收到回复并收到错误: FAILURE: Error Domain=NSCocoaErrorDo
我想限制 12 个帖子,只显示 post_featured 键值为 1 的精选帖子 componentDidMount() { return fetch(ConfigApp.URL+'json/
我正忙于研究为 Swift 创建的 Alamofire 网络库。我遇到过 responseJSON 函数: public func responseJSON( queue queue:
我正在使用 AlamoFire 调用我的网络服务: ApiManager.manager.request(.GET, webServiceCallUrl, parameters: ["id": 12
我正在尝试在我的应用程序中全局处理所有 ajax 异常。 我有一个简单的验证异常,在 ajax post 请求发送到服务器后抛出。 if (string.IsNullOrEmpty(name)) {
我有这种方法可以联系我的 REST 网络服务。我想在连接失败时生成异常。Xcode 告诉我不能使用函数 throw VendingMachineError.InvalidSelection 因为 me
鉴于以下情况: $(function() { function getTopMod(e) { var requesturl = '/r/lol/about/moderators
我正在开发一个小型网络框架来运行 HCI 研究并遇到以下问题: 我有一个运行 express 的 Node 服务器,用于从 JSON 文件为我的本地主机数据提供服务。不是最好的数据库,但由于它是一个单
我将 sessionManager.request 与 .validate().responseJSON 一起使用 是否可以在将响应传递给 responseJSON 之前修改我从服务器获得的响应?我需
( swift 2.2,Alamofire 3.0) 我有一个相当复杂的错误/状态检查协议(protocol),我在我的许多 REST 调用之后应用它,我自然希望重新使用此代码。 Alamofire.
我有处理位置数据的代码,因此我可以提取可以匿名化数据的详细信息——例如,如果我的地点 API 说它是 _type:“Building”和 building:“Safeway”——我可以保存数据作为纬度
Alamofire.request(todoEndpoint) .responseJSON { response in switch response.resu
我正在使用 alamofire 上传图片。这是注册 API,您可以在其中使用个人资料照片进行注册(这是我必须上传的内容) 所以我的代码是这样的(我将用另一个代码替换 print(JSON);这只是为了
注意:我需要使用 ObjectMapper,而不是 AlamoFireObjectMapper。 如何不去JSON而是从responseJSON数据映射到User?以下是尝试从 responseJSO
我有以下代码来获取对评论列表的回复。 (1条评论多条回复) static func fetchCommentsAndTheirReplies(articleId: String, failure: (
我正在尝试在 javascript 中解析一个 bit.ly JSON 响应。 我通过 XmlHttpRequest 获取 JSON。 var req = new XMLHttpRequest; r
我是 Swift 新手,我正在尝试升级一些旧的 Swift 代码。我收到以下警告: 'responseJSON(queue:dataPreprocessor:emptyResponseCodes:em
我是一名优秀的程序员,十分优秀!