我想使用工廠的set方法,但都返回默認我該如何解決這個問題?Angular JS的工廠函數
app.factory("DualListShareFactory", function(){
var selectedArray=[];
return{
getSelectedArray: function() {
return selectedArray;
},
setSelectedArray: function (array){
selectedArray=array;
}
}
});
從https://github.com/tushariscoolster/ng-duallist
採用NG-雙列表我tkining它不工作:DualListShareFactory.setSelectedArray(vm.rightValue); 我使用其他方法和推,但我收到同樣的錯誤。
app.controller("duallist2", function($scope,DualListShareFactory){
var vm=this;
vm.property='duallist2';
activate();
function activate() {
vm.leftValue = [];
vm.rightValue = [];
vm.addValue = [];
vm.removeValue = [];
function loadMoreLeft() {
for (var i = 0; i < $scope.incomingItem.length; i++) {
vm.leftValue.push({
'name': $scope.incomingItem[i]
});
}
};
function loadMoreRight() {
}
vm.options = {
leftContainerScrollEnd: function() {
},
rightContainerScrollEnd: function() {
},
leftContainerSearch: function (text) {
console.log(text)
vm.leftValue = $filter('filter')(leftValue, {
'name': text
})
},
rightContainerSearch: function (text) {
vm.rightValue = $filter('filter')(rightValue, {
'name': text
})
},
leftContainerLabel: 'Gelen Parçalar',
rightContainerLabel: 'Seçilen Parçalar',
onMoveRight: function() {
console.log('right');
console.log(vm.addValue);
},
onMoveLeft: function() {
console.log('left');
console.log(vm.removeValue);
}
};
loadMoreLeft();
var leftValue = angular.copy(vm.leftValue);
var rightValue = angular.copy(vm.rightValue);
} console.log(vm.rightValue);
DualListShareFactory.setSelectedArray(vm.rightValue);
});
我固定的問題,你可以找到主要問題部分的代碼塊 –
相信我,我想...... –