テンプレートにはselect
の要素が4つあります。後続の各要素のオプションは、前の選択に基づいて変更されるはずです。たとえば、「車」select
から「Toyota」を選択すると、次はToyotaモデルのみが表示されます。私はこれを設定しようとしましたが、AJAX要求は永遠に呼び出しを繰り返します。この種のフォームにはどのようなパターンが最適ですか?ここでVueJS 2:他の選択要素による選択オプションの変更
は、私は、テンプレートに持っているものの例です:
<select v-model="selected.car" :change="getModels()">
<option v-for="car in cars" value="car.id">{{ car.name }}</option>
</select>
<select v-model="selected.model" :change="getYear()">
<option v-for="model in models" :value="model.id">{{ model.name }}</option>
</select>
...
とJavaScript:
methods: {
getModels() {
axios.get('/api/models/'+this.selected.car).then(resp => {
this.models = resp.data;
}
...
}
だから何がここで最高のパターンでしょうか?
"AJAX要求は永遠に呼び出しを繰り返します。" - 質問に答えることに関連するかどうかは分かりませんが、これが何を意味するかを明示的に付け加えることができますか? –
はい、最初のselect要素を選択すると、ajax呼び出しが無期限に繰り返されます。 –