試圖圍繞我的頭爲什麼這是行不通的。當我有我的$ http.get在我的控制,我可以存儲在JSON文件的數字轉換成數組元素,像這樣:Angular.js:爲什麼數組元素只在使用工廠時等於null?
$http.get('weapon.json').success(function(data) {
$scope.weapons = data;
for(i=0, len=$scope.weapons.length; i < len; i++){
$scope.weapons[i].ele = $scope.elementType[$scope.weapons[i].ele];
}
});
但是,當我試圖將我的$ http.get到工廠,$ scope.weapons [i] .ele等於null而不是數組元素。
.factory('WeaponData', function($http){
return $http.get('weapon.json');
})
.controller('BL2Ctrl', function($scope,WeaponData) {
WeaponData.success(function(data) {
$scope.weapons = data;
for(i=0, len=$scope.weapons.length; i < len; i++){
$scope.weapons[i].ele = $scope.elementType[$scope.weapons[i].ele];
}
});
})
這裏是一個Plunker它不工作
1.不確定如何使用weaponStats.ele工廠。歡迎小姐交流。我以前的工作方式是沒有工廠服務。像這樣[Plunker](http://plnkr.co/edit/erd0FcMqUZq1Qz5CzF1G) – mjoconnor
對不起,我誤讀你的描述。我會更新我的答案。 – squid314
1.不知道我會如何在工廠使用weaponStats.ele。歡迎小姐交流。我以前的工作方式是沒有工廠服務。像這樣[Plunker](http://plnkr.co/edit/erd0FcMqUZq1Qz5CzF1G)2.我之前嘗試過這種方式,但它打破了選擇下拉菜單。這有效,但它是最有效的方法嗎?我在JSON中傳遞了我想要的整個elementType屬性,但是我用這個數字來解決另一個問題,我選擇了weaponStats.ele,在視圖中默認爲空白。 – mjoconnor