空港のリストを取得するコントローラがあります。これは、出発のために使用する入力コンポーネントを1つフィードします。オートコンプリートコンポーネントは、それぞれのケースでうまく機能します。私は、各入力を選択した空港を個別のパラメータとして別のコントローラに渡して、第2のURLから価格を取り出す方法を見つけようとしています。 1つのコンポーネントでこれを行う方法に関するアイデアはありますか?あるコントローラから別のコントローラへパラメータを渡すAngularJS
これは、初期これは複数回使用される単一入力コンポーネントである
$scope.airport_list = null;
$http({
url: 'someUrl.com',
method: 'GET'
})
.then((response) => {
$scope.airport_list = response.data.airports;
});
$scope.searchFor = function(airportName) {
$scope.hidelist = false;
const output = [];
angular.forEach($scope.airport_list, function(airport) {
if (airport.name.toLowerCase() === airportName) {
output.push(airport);
}
});
$scope.airports = output;
};
$scope.selectAirport = function(airportName) {
$scope.airportSearch.name = airportName.name;
$scope.state = !$scope.state;
};
をフェッチするためのコントローラです。
<div class="control" ng-controller="selectCtrl">
<div>
<input type="text" name="airport"
id="airport" ng-model="airportSearch.name" />
<div class="airport-container-dropdown" ng-
hide="!airportSearch.name">
<div class="airport-list"
ng-repeat="airport in airport_list | filter:airportSearch"
ng-show="!state"
ng-click="selectAirport(airport)">
{{ airport.name }}
</div>
</div>
</div>
</div>
これは、コンポーネントがビュー
<div class="control">
<label for="from">From:</label>
<selector-component id="from"></selector-component>
</div>
<div class="control">
<label for="to">To:</label>
<selector-component id="to"></selector-component>
</div>
これは本当にそれで起こって空港セレクタコンポーネントではなく、何でもありで使用するために渡される方法です。
import template from './airport-selector.html';
export const AirportSelectorComponent = {
template
};
コンポーネント 'selector-component'はどのように登録していますか? – 31piy
.component( 'selectorComponent'、SelectorComponent) –