不在页面
中显示
$scope.sayHi=function(provider) {
$scope.Name=provider.Name
console.log(provider)
}
$http.get("data.php")
.success(function(response) {
response.records.forEach(function($scope) {
app.provider($scope.City , function () {
return {
$get:function() {
return {
Name:$scope.Name
}
}
}
})
})
});
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.11/angular.min.js">
<input ng-model="city">
<p ng-click='sayHi(city)'>Click </p>
<p>This is name: {{name}}</p
> Blockquote**strong text**
</script>
我可以创建一个提供者并访问它使用页面
中的ng-model答案 0 :(得分:0)
您可以通过注入向控制器添加已定义的服务/提供程序。
在您的模块中定义它:
app.provider("myProvider", ['$http', function($http) {
getXyz: function(callback) {
$http.get("data.php").success( callback );
}
}]);
顺便说一下用$符号来启动你自己函数的名称并不是一个好主意,因为angularfor内部变量使用它。名称可能会发生碰撞。
然后在您的控制器中使用它,无需在您的视图中访问它。
app.controller( "myController", ['$scope', 'myProvider', function($scope, myProvider){
$scope.sayHello = function(){
myProvider.getXyz(function(response) {
$scope. ...
});
}
}