0

我發現圖書館nvD3-Angular看起來非常好,很友好。 我正在使用它來繪製靜態數據,但我希望能夠讀取存儲在我的數據庫中的數據。有沒有一種方法可以通過使用JQuery的AJAX設置數據變量? 我知道必須有一種方法來獲取這些數據,但我還沒有找到它。通過AJAX從MySQL讀取數據,將其作爲NVD3-Angular控制器中的數據對象發送

我的代碼如下: 在我的html:

<div ng-controller="PlotController"> 
    <nvd3 options="options" data="data"> 
    </nvd3> 
</div> 

在控制器:

app.controller('PlotController', function($scope){ 
     /* Chart options */ 
     $scope.options = { 
      chart: { 
       type: 'cumulativeLineChart', 
       height: 450, 
       margin : { 
        ... 
       }, 
      } 
     }; 
     $scope.initData = [ 
      { 
       key: "Cis ON", 
       mean: 250, 
       values: [ [ 1083297600000 , -2.974623048543] , ... , [ 1354251600000 , 349.45128876100]] 
      }, 
      { 
       key: "Cis OFF", 
       mean: -60, 
       values: [ [ 1083297600000 , -0.77078283705125] ,..., [ 1085976000000 , -1.8356366650335]] 
      }, 
     ]; 
     //Chart data 
     $scope.data = angular.copy($scope.initData); 
}); 

由於額外的信息: 服務器端編碼用PHP Laravel 5.1,使用MySQL作爲DB。

感謝您的任何指導。

+0

我想在我的應用,以提供格式化的數據爲$ scope.data值內注射。如何才能做到這一點?我知道這是可能的。 – newToStackOverflow

回答

0

在angularjs參考$http服務在這裏:https://docs.angularjs.org/api/ng/service/ $ HTTP

樣品:

$http({ 
    method: 'GET', 
    url: 'your api url' 
}).then(function successCallback(response) { 
    // this callback will be called asynchronously 
    // when the response is available 
}).catch(function errorCallback(response) { 
    // called asynchronously if an error occurs 
    // or server returns response with an error status. 
}); 
+0

是的,只是爲了澄清,我不反對$ http中的數據,但我想在nvD3中的PlotController使用的對象中設置$ scope.data的內容。 – newToStackOverflow

+0

你有沒有暴露過API來獲取數據? –

+0

不,這需要根據我的理解手動完成。 – newToStackOverflow

相關問題