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);
};
})