gpt4 book ai didi

angularjs - 推荐使用 $http.get 的地方在哪里

转载 作者:行者123 更新时间:2023-12-03 06:48:17 26 4
gpt4 key购买 nike

我正在使用 angularjs 并有以下 HTML:-

   <div ng-app="App">
<div ng-controller="AppCtrl">
<products></products>
</div>
</div>

我的 js 看起来像这样:-

var app = angular.module('App', []);

app.controller("AppCtrl", function($scope, $http) {
$http.get('/api/products')
.then(function(res) {
$scope.products = res.data;
});
});

app.directive("products", function () {
return {
restrict: "E",
template: "<h1>Products</h1><ul><li ng-repeat='product in products'>{{product.Name}} - <em>{{product.Category}}</em></li></ul>",
};
});

这工作得很好,但我不确定指令如何知道 Controller 在模板呈现结果之前加载了数据。所以我的问题是:-

在这种情况下使用 $http.get 是推荐的方法吗(最好有解释),如果不是,那么推荐的方法是什么?

最佳答案

我认为这是 $http.get 的一个很好的用途。归根结底,它只是一个用于执行 ajax 请求的工具。

您的问题似乎源于担心您的指令会在不同情况下神秘地中断,这是可以理解的。那么,关键是要了解数据绑定(bind)是 Angular 的 secret 武器。

一种思考方式是,Angular 编译所有内容并将其放入事件/摘要循环中。因此,它能够检测依赖关系,监视变量的更改,并在这些变量更改时调用依赖方法(例如您的产品指令)。

Angular 指南在提供概念图以供进一步理解方面做得很好,它在这里:http://docs.angularjs.org/guide/concepts

关于angularjs - 推荐使用 $http.get 的地方在哪里,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16134865/

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