0
私はAngularjsディレクティブを作成しています。しかし、私は指令にパラメータを渡して、そのコントローラ内で$ httpサービスを使って項目を設定する必要があります。変数をディレクティブのコントローラに渡す
"listId"パラメータをディレクティブに渡すと、ディレクティブ内のコントローラは、このパラメータがサーバーからそのリストの項目を取得することを期待しています。 ディレクティブに埋め込まれたコントローラ内のコードにコメントが付けられています。
<script type="text/javascript">
var app = angular.module('app', []);
app.controller('metadataCtrl', function ($scope, $http) {
});
app.directive('mydirective', function ($http) {
return {
restrict: 'AE',
template: '<div ng-repeat="model in items">{{ model.name}} </div>',
replace: true,
scope: {
listId: '='
},
controller: function ($scope) {
//console.log(scope.listId);
// console.log(listId);
//$http({ method: 'GET', url: 'http://localhost:62624/home/listvalues?listid=' }).then(function (response) {
// $scope.items = response.data;
//}, function (result) { alert("Error: No data returned"); });
},
link: function (scope, element, attrs) {
console.log(scope.listId);
}
};
});
</script>
HTMLコード
<body ng-app="app">
<form name="myForm" ng-controller="metadataCtrl" class="my-form">
<mydirective list-id="99"></mydirective>
</form>
</body>
私はこれを試しても機能しませんでした。その今働いている。とにかくありがとう。 – Coding
@ h.salmanあなた自身の回答を投稿して回答として受け入れる必要があります – kazupooot