我的Angularjs控制器是这样的:
chrome.storage.local.get("keyName",function(items) {
console.log(items)
console.log(items.keyName)
var criticsscore = items.keyName[0]
var audiencescore = items.keyName[1]
$('#criticsscore').html('Critics ' + criticsscore)
$('#audiencescore').html('Audience ' + audiencescore)
$('#title').html(items.keyName[2])
// Do something with items.keyName
});
});
chrome.storage.local.get("keyName",function(items) {//initialize the application
console.log(items)
console.log(items.keyName)
var critics = items.keyName[0]
var people = items.keyName[1]
$('#criticsscore').html('Critics ' + critics)
$('#audiencescore').html('Audience ' + people)
$('#title').html(items.keyName[2])
// Do something with items.keyName
});
我想在fn2中获得var A的值。我怎么能得到它?
答案 0 :(得分:0)
我不确切知道你的背景,但我认为A必须属于你的范围:
$scope.fn1 = function(){
//do something A
$scope.A = 122;
};
$scope.fn2 = function(){
//do something B
//I want to get var A here
}
答案 1 :(得分:0)
一种方法是在函数A
fn1
的值
var A = 122; // or $scope.A = 122;
$scope.fn1 = function(){
//do something A
};
$scope.fn2 = function(){
//do something B
//I want to get var A here
}
或者
在功能A中调用功能B.
$scope.fn1 = function(){
//do something A
var A = 122;
$scope.fn2(A);
};
$scope.fn2 = function(value){
//do something B
//I want to get var A here
}
但是如果你在$ scope&中定义它在函数2内部,如果有可能在函数1之前调用函数2,这也不是一个好习惯
答案 2 :(得分:0)
尝试声明全局$scope.A
而不是var A
$scope.A = 0;
$scope.fn1 = function(){
//do something to change A
$scope.A = 122;
};
$scope.fn2 = function(){
//do something B
var abc = $scope.A;
console.log(abc);
}
abc should return 123,
希望这是您正在寻找的答案! $scope
是一个全局变量,可以在整个控制器中更改/使用:)