私はAngular.jsで私の最初の措置をしています。私はAngularをどう扱うべきかわからない小さな問題に直面しています。私はそれを解決するための多くのjQueryの方法を知っているが、私はそれが角道が存在していることを確信している:まずAngular.jsファクトリ内に外部変数を取得する
を、私は、現在の名前を印刷currentPlant
ng-model
として
<select class="form-control" name="planta" ng-model='currentPlant' ng-options='plant.name for plant in plants' >
</select>
で設定したselect要素を持っています選択した値を変更するとこの要素が更新されていることがわかりますので、currentPlant
が正しく更新されています。
<h1>{{ currentPlant ? currentPlant.name : 'Seleccione una planta'}}</h1>
は、今私は、次のボタンがあります。
<button class='btn btn-primary' ng-click='loadTowers()'>
Cargar torres
</button>
ボタンを押すと、loadTowers
関数が実行され、問題が起動したときに、今あります。私は、コントローラにそのようにloadTowers
機能を設定している:
$scope.loadTowers = plants.towers;
plant
は内部towers
機能を実装している角度サービスです。私はcurrentPlant
という値をこの関数の中に入れる必要があります。見てみましょう:
.factory('plants', ['$http',function($http){
var o = {
plants: [],
towers : []
};
o.towers = function(){
var id = ¿?; // I NEED SET THIS VARIABLE WITH THE currentPlant.id VALUE
$http.get('/api/v1/plants/'+id+'/towers')
.success(function(data){
angular.copy(data, o.towers);
})
}
return o;
}]);
私はオプションの要素でdata-plant
属性を設定することができ、とjQueryを介して選択されますが、私は解決策のこの種を避けるしようとしています。あなたはこれにどのように対処していますか?
注:私は単に私がボタンを押すと、選択しoption
を取得し、サービスを通じてそのAPI`in機能に異なるget
リクエストを行いたいテイクアカウント。
ありがとうございます。