teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

画像や説明の追加

2020/12/10 06:57

投稿

tktail
tktail

スコア72

title CHANGED
@@ -1,1 +1,1 @@
1
- vue.js / vuetify
1
+ vuetifyのautoCompleteを使用した入力フォーム
body CHANGED
@@ -1,20 +1,25 @@
1
+ laravelでバックエンドを構築し、vue.js/vuetifyでフロントを組んでいます。
1
- vuetifyauto complete使ってフォームを組んでいます。
2
+ 画像ように駅選択し、そこからの交通手段、所要時間を入力するフォームをループさせています。
2
- コードは後述の通りで、これをコンポーネント化して5個表示しています。
3
3
 
4
+ ![イメージ説明](6f8ee0882aef2c2f83d6791c28acfe0e.jpeg)
5
+
6
+ 駅の選択にはvuetifyのauto completeを使ってフォームを組んでいます。
7
+ コードは後述の通りで、これをコンポーネント化し、v-forで5個表示しています。
8
+ 今回は質問の為に1つだけ表示するようにしました。
9
+
4
10
  ```
5
11
  <template>
6
12
  <v-container>
7
13
  <v-row dense>
8
-
9
14
  <v-col sm="4">
10
-
11
15
  <v-autocomplete
12
16
  v-model="model"
13
17
  :items="stationsSon"
14
18
  :search-input.sync="search"
19
+ item-text="name"
15
20
  name="station_id[]"
16
21
  item-value="id"
17
- label=駅名(漢字入力で絞り込みやすくなります。
22
+ label=駅名(漢字入力で絞り込みOK
18
23
  clearable
19
24
  hide-details
20
25
  hide-selected
@@ -22,7 +27,7 @@
22
27
  >
23
28
 
24
29
  <template v-slot:selection="{ item,selected }">
25
- <span>{{ item.routell_name + item.name }}</span>
30
+ <span>{{ item.routell_name + item.name + '駅' }}</span>
26
31
  </template>
27
32
 
28
33
  <template v-slot:item="{ item }">
@@ -43,6 +48,7 @@
43
48
  item-text="name"
44
49
  label="交通手段"
45
50
  outlined
51
+ clearable
46
52
  >
47
53
  </v-select>
48
54
  </v-col>
@@ -92,17 +98,18 @@
92
98
  },
93
99
  },
94
100
 
95
- created() {
96
- console.log(this.stationsSon);
97
- }
98
-
99
101
  };
100
102
  </script>
101
103
  ```
102
104
 
103
- ここに入力された値を受け取った時
105
+ ここに入力された値をdump&dieで受け取った時
104
- verhicleとtake_timeはarrayが5個なの意図したように動いています。
106
+ verhicleとtake_timeは配列で意図したように動いています。
105
- しかし何故かstationのところだけarrayが10個返ってきます
107
+ しかし何故かstationのところだけarrayが2倍になって返ってきます(以下の画像のような形)
108
+ 増やすと奇数箇所(0含む)のところはnullが返ってきており、偶数箇所に値が入っているようです。
106
109
 
110
+ ![イメージ説明](04707b3e2bec1f607ea45735741505ae.jpeg)
111
+
107
- vuetifyの仕様なのかもしれませんが、5個にする方法はありませんでしょうか?
112
+ これはvuetifyのautoCompleteの仕様なのかもしれませんが
113
+ 順番にDBに入れたいので、順番通りの配列にしたいです。
114
+
108
115
  ご回答よろしくお願い致します。