質問編集履歴

1

回答でいただいたコードをもとに変更

2021/02/16 01:50

投稿

hafmk
hafmk

スコア9

test CHANGED
File without changes
test CHANGED
@@ -107,3 +107,133 @@
107
107
  }
108
108
 
109
109
  ```
110
+
111
+
112
+
113
+ ### いただいた回答をもとに追記
114
+
115
+
116
+
117
+ HTML
118
+
119
+ ```ここに言語を入力
120
+
121
+ <!-- 前画面で取得した値をv-forで一覧表示 -->
122
+
123
+ <div v-for="object in data.loginListData"
124
+
125
+ :key="object.kigyocode"
126
+
127
+ :class="{focused: isSelected(selectData)}"<!-- ←追記箇所 -->
128
+
129
+ >
130
+
131
+
132
+
133
+ <button
134
+
135
+ class=" form-control w-300px h-55px d-block border-1px-blue-004BB1 pl-4 pr-4 radius-5px f-12px text-black-0D0D0D mb-3 input_radio_toggle2 "
136
+
137
+ @focus="isFocus(object)"
138
+
139
+ >{{ object.kigyomei}}</button>
140
+
141
+ </div>
142
+
143
+
144
+
145
+ <!-- ボタン-->
146
+
147
+ <button
148
+
149
+ class="btn w-150px h-28px text-center rounded-pill f-12px text-white bg-blue-013440 mx-auto d-block"
150
+
151
+ @click="kigyousentakuClick()">
152
+
153
+ すすむ
154
+
155
+ </button>
156
+
157
+ ```
158
+
159
+
160
+
161
+ css
162
+
163
+
164
+
165
+ ```ここに言語を入力
166
+
167
+ .focused {
168
+
169
+
170
+
171
+ background: rgba(213, 225, 241, 0.71);
172
+
173
+ }
174
+
175
+ ```
176
+
177
+ JavaScript
178
+
179
+ ```ここに言語を入力
180
+
181
+ //(追記箇所)オブジェクトが選択されているときだけクラスを付与する
182
+
183
+ isSelected(object) {
184
+
185
+ const selectedObject = JSON.stringify(this.selectData) // 選択中のオブジェクト
186
+
187
+ return object.kigyocode === selectedObject.kigyocode // 選択中のものと渡されたものIDが等しいならばtrueを返す
188
+
189
+
190
+
191
+ //選択したデータ取得
192
+
193
+ isFocus(object){
194
+
195
+
196
+
197
+ this.selectData.eigyoshocode = object.daihyoeigyoshocode;
198
+
199
+ this.selectData.kigyocode = object.kigyocode;
200
+
201
+
202
+
203
+
204
+
205
+ },
206
+
207
+ ```
208
+
209
+
210
+
211
+ ### 詰まっているところ
212
+
213
+
214
+
215
+ うまくtrueが返っていないのか、cssのclassが適用されません。
216
+
217
+ > data.loginListDataのobjectが、何らかのidを持っている必要があります(でないと各objectが識別できないため)
218
+
219
+ > なのでuserIdというプロパティを持っているとして話を進めます。
220
+
221
+ こちらでご教示いただいたuserIdは、kigyocodeが該当すると認識しているため書き換えています。
222
+
223
+ ![イメージ説明](af4e2acd7e7f3bb55fc21e7009aab6ec.png)
224
+
225
+
226
+
227
+ 検証ツールで試したところ、
228
+
229
+ > return object.kigyocode === selectedObject.kigyocode
230
+
231
+ object.kigyocodeとselectedObjectには同じkigyocodeの値が入っているようには見えますが、
232
+
233
+ electedObject.**kigyocode **のkigyokodeの中身は「undefind」でした。
234
+
235
+ ![イメージ説明](5b5d5431ab22f028c8fcf8bc0e768dfd.png)
236
+
237
+
238
+
239
+ 何かコードが違っているのでしょうか。ご教示いただければ幸いです。