AMcoder - javascript, python, java, html, php, sql

Ինչպե՞ս օգտագործել bootstrap երկխոսությունը որպես vueJs բաղադրիչ:

Ես կցանկանայի ցույց տալ և թաքցնել bootstrap մոդալ երկխոսություն, որտեղ այս երկխոսությունը vue բաղադրիչ է, որը ես կարող եմ հարմարեցնել դրա հաստատունը (հաղորդագրություն, կոճակներ)՝ օգտագործելով հենակետեր:

Ես օգտագործում եմ v-if='show' այն ցույց տալու համար, բայց խնդիրն այն է, որ ես չեմ կարող show-ը սահմանել false, երբ մոդալը փակ է՝ սեղմելով մոդալ ֆոնի վրա: Արդյունքում երկխոսությունը ցուցադրվում է մեկ անգամ, բայց երբ այն փակ է, այն նորից չի ցուցադրվում, երբ ես երկրորդ անգամ սեղմում եմ ջնջել կոճակը:

Ես ունեմ մեկ vue.js բաղադրիչ, որը կոչվում է «անձ», որը պարունակում է մեկ այլ բաղադրիչ՝ «հաստատել-ջնջել» հետևյալ կերպ.

Person.vue:

<template>
    <div>
        <confirm-delete v-if="show" :msg="deleteMsg"></confirm-delete>
        <!-- person details -->
        <button @click="confirmDelete">
            <span class="glyphicon glyphicon-trash"></span>
        </button>
    </div>
</template>

<script>
export default {
    data () {
        return {
            show: false,
            deleteMsg: ''
        }
    },
    methods: {
        confirmDelete () {
            this.show: true,
            this.deleteMsg: 'Are you sure you want to delete this person?'
        }
    }
}
</script>

ConfirmDelete.vue:

<template>
    <div id="modalDelete" class="modal fade" tabindex="-1" role="dialog">
        <div class="modal-dialog" role="document">
            <div class="modal-content">
                <div class="media-body">
                    <p>{{msg}}</p>
                </div>
            </div>
        </div>
    </div>
<template>

<script>
    export default {
        props: ['msg'],

        mounted: function(){
            $('#modalDelete').modal('show')
        }
    }
</script>

Իհարկե, եթե ես օգտագործում եմ միայն մեկ բաղադրիչ՝ ներառելով երկխոսության կոդը անձի մեջ, սա աշխատում է: Բայց իմ նպատակն է նորից օգտագործել այս երկխոսության բաղադրիչը իմ հավելվածի այլ մասերում:

Կա՞ գաղափար, թե ինչպես կարող եմ դա անել:


Պատասխանները:


1

Ես կավելացնեի ref հատկանիշ ձեր confirm-delete բաղադրիչի պիտակին ձեր Person.vue ձևանմուշում, այնուհետև ConfirmDelete.vueին կտայի show մեթոդ, որը պարզապես գործարկում է bootstrap մեթոդը: Այդ կերպ դուք կարող եք գործարկել bootstrap մեթոդը ձեր confirmDelete մեթոդից ծնողում՝ this.$refs.modal.show()-ի միջոցով: Լրացուցիչ տեղեկություններ refs-ի մասին:

Person.vue:

<template>
    <div>
        <confirm-delete ref="modal" :msg="deleteMsg"></confirm-delete>
        <!-- person details -->
        <button @click="confirmDelete">
            <span class="glyphicon glyphicon-trash"></span>
        </button>
    </div>
</template>

<script>
    export default {
        data () {
            return {
                show: false,
                deleteMsg: ''
            }
        },
        methods: {
            confirmDelete () {
                this.$refs.modal.show();
                this.deleteMsg: 'Are you sure you want to delete this person?'
            }
        }
    }
</script>

ConfirmDelete.vue:

<template>
    <div id="modalDelete" class="modal fade" tabindex="-1" role="dialog">
        <div class="modal-dialog" role="document">
            <div class="modal-content">
                <div class="media-body">
                    <p>{{msg}}</p>
                </div>
            </div>
        </div>
    </div>
<template>

<script>
    export default {
        props: ['msg'],
        methods: {
            show: function() {
                $('#modalDelete').modal('show')
            },
        }
    }
</script>
05.04.2017
  • հիանալի է աշխատում :D Ես չգիտեի ռեֆերատների մասին: ձեր բացատրությունը շատ ավելի լավն է, քան vueJs-ի փաստաթղթերը: Շնորհակալություն ժամանակ տրամադրելու համար. 05.04.2017
  • Նոր նյութեր

    Օգտագործելով Fetch Vs Axios.Js-ը՝ HTTP հարցումներ կատարելու համար
    JavaScript-ը կարող է ցանցային հարցումներ ուղարկել սերվեր և բեռնել նոր տեղեկատվություն, երբ դա անհրաժեշտ լինի: Օրինակ, մենք կարող ենք օգտագործել ցանցային հարցումը պատվեր ներկայացնելու,..

    Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար
    Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար Ինչպե՞ս հանգստացնել ձեր միտքը և աշխատեցնել ձեր պրոցեսորը: Ինչպես մնալ հանգիստ և զարգանալ ճնշման տակ...

    Մեքենայի ուսուցում բանկային և ֆինանսների ոլորտում
    Բարդ, խելացի անվտանգության համակարգերը և հաճախորդների սպասարկման պարզեցված ծառայությունները բիզնեսի հաջողության բանալին են: Ֆինանսական հաստատությունները, մասնավորապես, պետք է առաջ մնան կորի..

    Ես AI-ին հարցրի կյանքի իմաստը, այն ինչ ասում էր, ցնցող էր:
    Այն պահից ի վեր, երբ ես իմացա Արհեստական ​​ինտելեկտի մասին, ես հիացած էի այն բանով, թե ինչպես է այն կարողանում հասկանալ մարդկային նորմալ տեքստը, և այն կարող է առաջացնել իր սեփական արձագանքը դրա..

    Ինչպես սովորել կոդավորումը Python-ում վագրի պես:
    Սովորելու համար ծրագրավորման նոր լեզու ընտրելը բարդ է: Անկախ նրանից, թե դուք սկսնակ եք, թե առաջադեմ, դա օգնում է իմանալ, թե ինչ թեմաներ պետք է սովորել: Ծրագրավորման լեզվի հիմունքները, դրա..

    C++-ի օրական բիթ(ե) | Ամենաերկար պալինդրոմային ենթաշարը
    C++ #198-ի ամենօրյա բիթ(ե), Ընդհանուր հարցազրույցի խնդիր. Ամենաերկար պալինդրոմային ենթատող: Այսօր մենք կանդրադառնանք հարցազրույցի ընդհանուր խնդրին. Ամենաերկար palindromic substring...

    Kydavra ICAReducer՝ ձեր տվյալների ծավալայինությունը նվազեցնելու համար
    Ի՞նչ է ICAReducer-ը: ICAReducer-ն աշխատում է հետևյալ կերպ. այն նվազեցնում է նրանց միջև բարձր փոխկապակցված հատկանիշները մինչև մեկ սյունակ: Բավականին նման է PCAreducer-ին, չնայած այն..