初学者通过控制台错误帮助进行 Angular JS 调试
Beginners help to Angular JS debugging via console errors
AngularJS对我来说是新的(而且很难(。所以我想学习如何调试。目前我正在学习一门课程,搞砸了一些事情。想知道如何解释控制台错误并解决错误。
plnkr.co 代码
索引.html
<head>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.5/angular.min.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
</head>
<body ng-controller="MainController">
<h1>{{message}}</h1>
{{ username }}
<form action="searchUser" ng-submit="search(username)">
<input type="search"
required placeholder="Username to find"
ng-model="username"/>
<input type="submit" value="search">
</form>
<div>
<p>Username found: {{user.name + error}}</p>
<img ng-src="http://www.gravatar.com/avatar/{{user.gravatar_id}}" title="{{user.name}}"/>
</div>
</body>
</html>
脚本.js
(function() {
var app = angular.module("githubViewer", []);
var MainController = function($scope, $http) {
var onUserComplete = function(response) {
$scope.user = response.data;
};
var onError = function(reason) {
$scope.error = "could not fetch data";
};
$scope.search = function(username) {
$http.get("https://api.github.com/users/" + username)
.then(onUserComplete, onError);
};
$scope.username = "angular";
$scope.message = "GitHub Viewer"; };
app.controller("MainController", MainController);
}());
控制台只说
搜索用户:1 获取 http://run.plnkr.co/lZX5It1qGRq2JGHL/searchUser? 404 (未找到(
任何帮助将不胜感激。
在你的表格中,你写了这个action
<form action="searchUser"
这样做是它会尝试提交到具有currentHostName''searchUser的url,因此在这种情况下,您正在plunker上进行测试,因此plunker网址。
您可以更改提交表单的网址。如果你想搜索ajax明智,那么你甚至不需要指定动作部分。您可以让您的服务/工厂为您做出这样的决定。
虽然与调试这个特定错误并不完全相关,但有一个 chrome 扩展"ng-inspector",它对 angularJS 新手非常有用。您可以在范围内查看每个角度变量的值及其值。希望对您有所帮助!这是chrome扩展程序的链接:https://chrome.google.com/webstore/detail/ng-inspector-for-angularj/aadgmnobpdmgmigaicncghmmoeflnamj?hl=en
由于您使用的是ng-submit页面在响应到达之前被重定向,并且您提供了任何操作URL
作为searchUser
,这不是状态或任何html文件,因此它被用于未知地址,它是异步调用,因此需要一些时间,您可以将输入类型用作button
而不是submit
。
这是工作弹道机。
<!DOCTYPE html>
<html ng-app="githubViewer">
<head>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.5/angular.min.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
</head>
<body ng-controller="MainController">
<h1>{{message}}</h1>
{{ username }}
<form >
<input type="search"
required placeholder="Username to find"
ng-model="username"/>
<input type="button" ng-click="search(username)" value="search">
</form>
<div>
<p>Username found: {{user.name + error}} {{user}}</p>
<img ng-src="http://www.gravatar.com/avatar/{{user.gravatar_id}}" title="{{user.name}}"/>
</div>
</body>
</html>
- Angular JS IE9 Hashbang url rewriting
- 无法在数据endVal中设置值=“”;{{ucount}}”;使用Angular JS的CountUp
- angular.js没有'无法在PhoneGap中处理视图标记
- Angular js-返回一个包含类似
- 如何使用 Angular JS 将数据保存在数据库中
- 将Angular js与taglib结合使用
- Angular JS Filter-通过3个复选框进行筛选
- vaadin:使用自定义布局集成angular js
- angular js密码强度显示问题
- 使用angular.js问题的JavaSpringREST服务
- 将复杂对象从angular js传递到web api,它总是返回404
- entre上的angular js阻止提交
- 根据Angular.JS上一次的内容禁用选择
- 如何在angular js中使用指令.不适用于我的情况,为什么
- 预期响应包含一个对象,但在angular js中得到一个数组错误
- angular.js:13424错误:[ng:areq]参数'fn'不是函数,getObject
- 使用Angular js-量角器e2e测试上传文件
- Angular.js延迟控制器初始化
- 如何在angular.js中动态应用自定义过滤器
- 谷歌地图/Angular JS:地图更新并不总是反映数据,并且可以't删除标记