私は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>",
};
});
これは非常にうまく機能しますが、テンプレートが結果をレンダリングする前にコントローラーがデータをロードしたことをディレクティブがどのように認識しているかはわかりません。だから私の質問は: -
$http.get
このシナリオでa を使用するための推奨される方法は何ですか (説明はいいでしょう) またはそうでない場合は、推奨される方法は何ですか?