Vuetify v-select
Вообщем может меня уже поплавило или я совсем глупый пишу форму для регистрации, первое что встречает пользователя это выпадающий список "Role" есть 2 типа регистрации, и после того как пользователей выбирает свою роль для него открываются поля для ввода, выглядит это примерно так
Собственно сама форма <v-dialog class="reg" btn-text="Регистрация"> <v-app style="max-height: 90%" id="inspire"> <div> <v-select v-model="select" :items="items" item-text="role" label="Role" return-object @change="chekRole();" ></v-select> <div v-show="visibleCorp"> <v-text-field label="Название компании"></v-text-field> <!-- :rules="rules" --> <v-text-field label="Количество работников" hide-details="auto" ></v-text-field> </div> <div v-show="visibleGen"> <v-text-field label="Имя"></v-text-field> <!-- :rules="rules" --> <v-text-field label="Фамилия" hide-details="auto"></v-text-field> </div> </div> </v-app> </v-dialog> Шаблон где оно появляется <template id="dialog-template"> <div> <div class="Dialog" v-show="active"> <div class="Dialog__overlay"></div> <div class="Dialog__content"> <div class="Dialog__body"> <slot></slot> </div> <div class="Dialog__footer"> <button class="btn" @click="onCancel()">Отмена</button> <button class="btn btn-ok" @click="onConfirm()">{{ btnText }}</button> </div> </div> </div> </div></template > Скрипт <script> Vue.component("v-dialog", { template: "#dialog-template", data: function () { return { active: false, }; }, props: ["btnText"], methods: { open: function () { this.active = true; }, close: function () { this.active = false; }, onCancel: function () { this.close(); }, onConfirm: function () { this.close(); }, }, }); new Vue({ el: "#app", vuetify: new Vuetify(), data() { return { select: { role: "General" }, items: [{ role: "General" }, { role: "Corporate" }], visibleGen: true, visibleCorp: false, }; rules: [ (value) => !!value || "Required.", (value) => (value && value.length >= 6) || "Min 6 characters", ]; }, }); </script> Посмотреть мой позор можно тут : https://baysnoize.github.io/TokenD/ |
Уже не актуально, вообщем говорю проблема была в видимости не там создавал метод
new Vue({ methods: { RegInputVisible: function () { if (this.select == "General") { this.show = !this.show; } else { this.show = !this.show; } }, }, <div v-if="show"> Поля 1 </div> Поля 2 <div v-else> </div> |
Часовой пояс GMT +3, время: 04:59. |