Ich muss JQ-ähnliche Funktionen in VueJS ausführen:
- html @foreach($users as $user) <td> <selecter class="check-change" data-id="{{$user->id}}"> <opt @if($user->status == 'active') selected @endif value="active">Active</opt> <opt @if($user->status == 'wait_confirm') selected @endif value="wait_confirm">Wait Confirm</opt> <selecter> </td>` - jq `$('.check-change').on('change', function() { var new_value = this.value; -> send request update user (this.attr('data-id')) });
Ich stecke fest, weil ich nicht weiß, wie ich das überprüfte Attribut in vue js überprüfen und hinzufügen soll oder wie ich die Benutzer-ID und die ausgewählte Option erhalten kann, wenn sich der Selektor des Benutzers ändert.
Aktueller Code:
const items_status = [ { state: 'Active', abbr: 'active', }, { state: 'Wait Confirm', abbr: 'wait_confirm', } ]; const selectedOption = ref({ state: 'Wait Confirm', abbr: 'wait_confirm', }) <tr v-for="user in users" :key="user.id" style="height: 3.75rem;" <td> <VSelect v-model="selectedOption" :hint="`${selectedOption.state}, ${selectedOption.abbr}`" :items="items_status" item-title="state" item-value="abbr" label="Select" persistent-hint return-object single-line /> </td> </tr>
如果你想在选项改变时触发某些操作,那么你可以使用一个 watcher 来实现:
如果你想自定义 VSelect,就像你在第一个例子中展示的那样,那么你可以替换选项组件。但是我相信 Vuetify 已经处理了活动状态,所以除非你需要特定的设计,否则不需要修改它。