我是 angular.js 的新手,我正在关注大约一年前制作的教程我正在尝试创建一个搜索功能,该功能接受输入并在 Github.com 中搜索它 HTML 代码是:
<!DOCTYPE html>
<html ng-app="github">
<head>
<script src="angular.min.js"></script>
<script src="script.js"></script>
</head>
<body ng-controller="main">
<h1>{{message}}</h1>
<p> {{username}} </p>
<form name="search">
<input type="search" placeholder="enter name" ng-model="username">
<button type="submit" ng-click="search(username)">search</button>
</form>
<div>
<h1> {{user.login}} </h1>
<img src="http://www.gravatar.com/avatar/{{user.gravatar_id}}">
<p> {{user.type}} </p>
</div>
</body>
</html>
和 JS 代码:
// Code goes here
(function () {
var app = angular.module("github", []);
var main = function ($scope, $http) {
var onComplete = function (response) {
$scope.user = response.data;
};
var onError = function (reasone) {
$scope.error = "no can";
};
$scope.search = function (username) {
$http.get("http://api.github.com/users/" +username).then(onComplete, onError);
};
$scope.message = "Git hub viewer";
};
app.controller("main", ["$scope", "$http", main]);
}());
这给了我一个错误 >>> TypeError: v2.search is not a function <<< 寻求帮助:我遇到了这样的问题,解决方案是不在全局类型中使用“main”函数,但“search”不是全局的我想..希望这有帮助
这是codepen链接:
http://codepen.io/ToBeM12/pen/vGvwzo
原文由 Mahmoud Mabrouk 发布,翻译遵循 CC BY-SA 4.0 许可协议
可能的解决办法:IIFE写错了。
代替
目前,这是我能找到的唯一错误。