簡體   English   中英

角度指令控制器范圍

[英]Angular directive controller scope

我正在嘗試開發一個具有其自己的控制器的指令,以便它可以從API收集所需的數據,然后將其注入到任何地方。

這是到目前為止我得到的:

(function () {
'use strict';

angular
    .module('app.hostelsmg.bookings')
    .directive('bookingsChart', bookingsChart);

function bookingsChart() {
    return {
        restrict: 'E',
        scope: true,
        controller: [function(){
            $scope.test = 'Hi there!';
        }],
        compile: function(tElem, attrs){
            tElem.html('{{test}}');
            return function(scope, elems, attrs){

            }
        }
     }
 }
})();

所以我想要的是從其自己的控制器獲取數據的指令。 到目前為止,我還無法以這種方式工作。

有人知道嗎?

你可以用這樣的東西

function bookingsChart() {
    return {
        restrict: 'E',
        scope: true,
        controller: ['$scope', 'yourservice', function ($scope, yourservice) {
            $scope.data = [];   //bind this data to your view

            $scope.getServiceData = function (count) {
                //your service call
                yourservice.getServiceData(count).then(function (data) {
                    $scope.data = data;  //sets data in $scope.data variable
                });
            }
        }],
        link: function (scope, elements, attributes) {
            //if you want to pass any parameters from your UI to your service method
            scope.getServiceData(attributes.count);    //calls the getServiceData in controller defined above 
        }
     }
 }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM