Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将参数传递给角度服务或工厂?_Javascript_Angularjs - Fatal编程技术网

Javascript 如何将参数传递给角度服务或工厂?

Javascript 如何将参数传递给角度服务或工厂?,javascript,angularjs,Javascript,Angularjs,这只扑克牌最能说明这一点: 但代码如下: var app = angular.module('plunker', []); app.controller('MainCtrl', function($scope,testFactory) { $scope.name = 'World'; var test_var = "iceland"; $scope.testFunction = testFactory.testFunction; }); app.service('testFac

这只扑克牌最能说明这一点:

但代码如下:

var app = angular.module('plunker', []);

app.controller('MainCtrl', function($scope,testFactory) {
  $scope.name = 'World';
  var test_var = "iceland";
  $scope.testFunction = testFactory.testFunction;

});

app.service('testFactory',function(){

  this.testFunction = function(){
    alert(test_var);
  };

})
在html中:

<body ng-controller="MainCtrl">
    <p ng-click="testFunction()">Hello {{name}}!</p>

  </body>

你好{{name}

现在,正如您在plunkr中看到的,test_var是未定义的,这是有意义的,因为它没有定义。。。所以我想从控制器传递它,但是如果我做了类似的事情
$scope.testFunction=testFactory.testFunction(test\u var),然后由于括号的原因,testFunction将与警报一起执行。但我只想通过测试,而不是执行函数。如何将其传入?

将调用包装在函数中,以便对
testFactory.testFunction(test\u var)
的调用仅在
$scope.testFunction()
处于

var app = angular.module('plunker', []);

app.controller('MainCtrl', function($scope,testFactory) {
  $scope.name = 'World';
  var test_var = "iceland";
  $scope.testFunction = function() {
    testFactory.testFunction(test_var);
  };
});

app.service('testFactory',function(){

  this.testFunction = function(test_var){
    alert(test_var);
  };

})

将调用包装到函数中,这样对
testFactory.testFunction(test\u var)
的调用仅在
$scope.testFunction()
处于

var app = angular.module('plunker', []);

app.controller('MainCtrl', function($scope,testFactory) {
  $scope.name = 'World';
  var test_var = "iceland";
  $scope.testFunction = function() {
    testFactory.testFunction(test_var);
  };
});

app.service('testFactory',function(){

  this.testFunction = function(test_var){
    alert(test_var);
  };

})

将调用包装到函数中,这样对
testFactory.testFunction(test\u var)
的调用仅在
$scope.testFunction()
处于

var app = angular.module('plunker', []);

app.controller('MainCtrl', function($scope,testFactory) {
  $scope.name = 'World';
  var test_var = "iceland";
  $scope.testFunction = function() {
    testFactory.testFunction(test_var);
  };
});

app.service('testFactory',function(){

  this.testFunction = function(test_var){
    alert(test_var);
  };

})

将调用包装到函数中,这样对
testFactory.testFunction(test\u var)
的调用仅在
$scope.testFunction()
处于

var app = angular.module('plunker', []);

app.controller('MainCtrl', function($scope,testFactory) {
  $scope.name = 'World';
  var test_var = "iceland";
  $scope.testFunction = function() {
    testFactory.testFunction(test_var);
  };
});

app.service('testFactory',function(){

  this.testFunction = function(test_var){
    alert(test_var);
  };

})