2015-04-16 74 views
3


我是Angularjs新手和Restangular noob。
這裏是我的問題:爲1次呼叫執行兩次Restangular方法

在我的主控制器我有這樣的:

angular.module('examplesiteApp') 
    .controller('MainCtrl', function ($scope,$location,Restangular) { 

    Restangular.setBaseUrl('http://api.example.com/api/v1/'); 
    var baseAccounts = Restangular.all('auth/register/'); 
    console.log(baseAccounts); 

這個命令我得到兩個元素(下同)在我的控制檯登錄。

我讀過一個類似的問題,它說使用ng-controller$routeProvider導致問題。

這裏是我的app.js

.config(function ($routeProvider, $locationProvider,uiGmapGoogleMapApiProvider) { 
    uiGmapGoogleMapApiProvider.configure({ 
     key: 'secret_shit_or_not', 
     v: '3.17', 
     libraries: 'geometry,visualization,places' 
    }); 
    $routeProvider 
     .when('/', { 
     templateUrl: 'views/home/slider.html', 
     controller: 'MainCtrl' 
     }) 

模板的樣子:

<body ng-controller="GeneralCtrl"> 
    <!--[if lt IE 7]> 
     <p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p> 
    <![endif]--> 
    <!-- Add your site or application content here --> 
    <div ng-include src="'views/main.html'"></div> 
    <div ng-view></div> 

根據URL NG-視圖得到一個定義的值(動態過程)。 的GeneralController是一個簡單的控制器:

angular.module('peersiteApp') 
    .controller('GeneralCtrl', function ($scope , $location) { 
    $scope.awesomeThings = [ 
     'HTML5 Boilerplate', 
     'AngularJS', 
     'Karma' 
    ]; 
    $scope.isAt = function(route){ 
     return route === $location.path(); 
    }; 
    }); 


可爲什麼我有Restangular射擊兩次,你告訴我?幫助我的角度約翰雪。

回答

2

發現解決方案:

我在子視圖中調用ng-controller。