2017-03-23 30 views
0

我無法理解$ scope.search在做什麼,比如,當它設置等於函數時它正在做什麼?而且,如果我想以其他方式做,我該怎麼做?
(我使用的角度JS,1.6版本)

$scope.search = function(){ 
        query.get($scope.username , { 
         success: function(gameScore) { 
          console.log(gameScore); 
          return gameScore; 
         }, 
         error: function(object, error) { 
          console.log("Sorry, this user does not exist yet"); 
         } 
        }); 
       }; 
+0

請參閱[爲什麼不推薦使用角度$ http成功/錯誤方法?從v1.6中刪除?](http://stackoverflow.com/q/35329384/5535245) – georgeawg

+1

名爲'search'的$ scope屬性被分配了對匿名函數的引用。請參閱[MDN JavaScript參考 - 函數表達式](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/function) – georgeawg

回答

0

您可以在控制器中的任何地方撥打$scope.search()。您也可以在使用該控制器的模板中的任何元素上執行類似ng-click=search()的操作。

調用$scope.search()將返回gameScore或將錯誤消息打印到控制檯。

+0

但如果我刪除它,並讓函數()發生錯誤 –

+0

你不能只有一個獨立的功能,它需要設置爲某些東西。 –

+0

實際上調用該函數將永遠不會返回任何東西 – Bergi

0

不知道這個功能是寫在一個普通控制器或組件控制器 由於您使用的是1.6 櫃面作爲一個組件控制器,可以將這個功能附加到組件控制器,並在您的模板或組件

使用
angular.module('app',[]) 
.component('testComponent', { 
    bindings: {}. 
    tempalate:'<div>$ctrl.getValue()</div>', 
    controller: function(){ 
     var ctrl = this; 
     ctrl.getValue = function() { 
     console.log('log your value'); 
    } 
    } 
}); 
+0

嗯,我會看看如果這樣的作品,謝謝:) –