最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue制作點(diǎn)擊切換圖片效果的詳細(xì)思路與步驟

 更新時(shí)間:2023年11月17日 09:00:06   作者:T?(ˉ?ˉ?)  
這篇文章主要給大家介紹了關(guān)于vue制作點(diǎn)擊切換圖片效果的詳細(xì)思路與步驟,圖片切換是一個(gè)很經(jīng)典的Vue入門學(xué)習(xí)案例,在你學(xué)習(xí)完一些基本的v-指令后,你可以嘗試去寫一個(gè)簡(jiǎn)單的demo去鞏固和熟悉這些指令的使用方法,需要的朋友可以參考下

思路

創(chuàng)建一個(gè)數(shù)組,數(shù)組里面放入圖片,利用props(父組件向子組件傳值),v-for(循環(huán)),v-bind(綁定屬性)將圖片傳入HTML定義的div中。

Ⅰ.在頭部導(dǎo)入vue文件(導(dǎo)入前提是vue文件已被引入js中)

<script src="js/vue.js"></script>

Ⅱ.在HTML中創(chuàng)建一個(gè)z-div(可根據(jù)自己喜好命名),用來接收組件的傳值,用v-for使數(shù)組元素遍歷循環(huán)以此顯示圖片,v-bind綁定im(im定義在script標(biāo)簽中的全局組件中),變量i傳入im中。

<div id="app">
     <z-div v-for="i in img" :im="i"></z-div>
</div>

Ⅲ.定義一個(gè)組件<template>,里面寫入需要傳給z-div的數(shù)據(jù),用v-bind綁定src元素,接受組件的傳值。

<template id="imgs">
    <div id="box" @click="change">
          <img :src="im" alt="" v-show="show">
     </div>
</template>

Ⅳ.在script標(biāo)簽里面定義一個(gè)全局組件(全局組件要在創(chuàng)建Vue實(shí)例之前注冊(cè)),并使用props屬性定義一個(gè)im(數(shù)組中的im是變量通過屬性綁定,綁定到子組件身上)。

Vue.component( 'z-div', {
                template: '#imgs',
                props: [ 'im' ],
                data: function ()
                {
                    return {
                        show: true
                    }
                },
                methods: {
                    change: function ()
                    {
                        this.show = !this.show
                    }
                }
            } )

Ⅴ.定義一個(gè)新的Vue,并在里面定義一個(gè)數(shù)組,里面放入我們需要的圖片。

var vm = new Vue( {
                el: '#app',
                data: {
                    img: [
                        'img/222_01.jpg',
                        'img/222_02.jpg',
                        'img/222_03.jpg',
                        'img/222_04.jpg',
                        'img/222_05.jpg',
                        'img/222_06.jpg',
                        'img/222_07.jpg',
                        'img/222_08.jpg',
                        'img/222_09.jpg',
                        'img/222_10.jpg',
                        'img/222_11.jpg',
                        'img/222_12.jpg',
                        'img/222_13.jpg',
                        'img/222_14.jpg',
                        'img/222_15.jpg',
                        'img/222_16.jpg',
                        'img/222_17.jpg',
                        'img/222_18.jpg',
                        'img/222_19.jpg',
                        'img/222_20.jpg',
                        'img/222_21.jpg',
                        'img/222_22.jpg',
                        'img/222_23.jpg',
                        'img/222_24.jpg',
                        'img/222_25.jpg'
                    ]
                }
            } )

Ⅵ.編輯樣式

 * {
                margin: 0;
                padding: 0;
            }
 
            #app {
                width: 550px;
                margin: 0 auto;
                display: flex;
                flex-wrap: wrap;
                justify-content: space-around;
            }
 
            img {
                width: 108px;
                height: 138px;
            }
 
            #box {
                width: 108px;
                height: 138px;
                background-color: pink;
                margin: 1px 0px;
            }

效果圖如下

完整代碼

<!DOCTYPE html>
<html>
 
    <head>
        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
        <title></title>
        //    引入vue
        <script src="js/vue.js"></script>
        <style>
            * {
                margin: 0;
                padding: 0;
            }
 
            #app {
                width: 550px;
                margin: 0 auto;
                display: flex;
                flex-wrap: wrap;
                justify-content: space-around;
            }
 
            img {
                width: 108px;
                height: 138px;
            }
 
            #box {
                width: 108px;
                height: 138px;
                background-color: pink;
                margin: 1px 0px;
            }
        </style>
    </head>
 
    <body>
        <div id="app">
            //v-for定義循環(huán),v-bind綁定屬性
            <z-div v-for="i in img" :im="i"></z-div>
        </div>
        <template id="imgs">
            <div id="box" @click="change">
                <img :src="im" alt="" v-show="show">
            </div>
        </template>
        <script>
            Vue.component( 'z-div', {
                template: '#imgs',
            //父組件向子組件傳值
                props: [ 'im' ],
                data: function ()
                {
                    return {
                        show: true
                    }
                },
                methods: {
                    change: function ()
                    {
                        this.show = !this.show
                    }
                }
            } )
            var vm = new Vue( {
                el: '#app',
                data: {
                    img: [
                        'img/222_01.jpg',
                        'img/222_02.jpg',
                        'img/222_03.jpg',
                        'img/222_04.jpg',
                        'img/222_05.jpg',
                        'img/222_06.jpg',
                        'img/222_07.jpg',
                        'img/222_08.jpg',
                        'img/222_09.jpg',
                        'img/222_10.jpg',
                        'img/222_11.jpg',
                        'img/222_12.jpg',
                        'img/222_13.jpg',
                        'img/222_14.jpg',
                        'img/222_15.jpg',
                        'img/222_16.jpg',
                        'img/222_17.jpg',
                        'img/222_18.jpg',
                        'img/222_19.jpg',
                        'img/222_20.jpg',
                        'img/222_21.jpg',
                        'img/222_22.jpg',
                        'img/222_23.jpg',
                        'img/222_24.jpg',
                        'img/222_25.jpg'
                    ]
                }
            } )
        </script>
    </body>
 
</html>

注:如果想要最初圖片不顯示,點(diǎn)擊顯示圖片效果的話,將下圖位置show的值改為false即可

總結(jié)

到此這篇關(guān)于vue制作點(diǎn)擊切換圖片效果的文章就介紹到這了,更多相關(guān)vue點(diǎn)擊切換圖片效果內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue.js中v-for指令的用法介紹

    Vue.js中v-for指令的用法介紹

    這篇文章介紹了Vue.js中v-for指令的用法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-03-03
  • 搭建vue開發(fā)環(huán)境

    搭建vue開發(fā)環(huán)境

    這篇文章主要介紹了搭建vue開發(fā)環(huán)境的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-07-07
  • Vue組件data函數(shù)的具體使用

    Vue組件data函數(shù)的具體使用

    在Vue組件中,data函數(shù)用于定義組件的數(shù)據(jù),本文主要介紹了Vue組件data函數(shù)的具體使用,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-02-02
  • vue如何通過src引用assets中的圖片

    vue如何通過src引用assets中的圖片

    這篇文章主要介紹了vue如何通過src引用assets中的圖片,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • electron+vue?實(shí)現(xiàn)靜默打印功能

    electron+vue?實(shí)現(xiàn)靜默打印功能

    這篇文章主要介紹了electron+vue?實(shí)現(xiàn)靜默打印功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • JavaScript實(shí)現(xiàn)簡(jiǎn)單的圖片切換功能(實(shí)例代碼)

    JavaScript實(shí)現(xiàn)簡(jiǎn)單的圖片切換功能(實(shí)例代碼)

    這篇文章主要介紹了JavaScript實(shí)現(xiàn)簡(jiǎn)單的圖片切換功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2020-04-04
  • Vue中掛載全局的方法詳解

    Vue中掛載全局的方法詳解

    有時(shí)候,頻繁調(diào)用的函數(shù),我們需要把它掛載在全局的vue原型上,方便調(diào)用,這篇文章主要為大家詳細(xì)介紹了Vue中掛載全局的具體操作,需要的可以參考下
    2024-03-03
  • Vue路由跳轉(zhuǎn)的5種方式及擴(kuò)展

    Vue路由跳轉(zhuǎn)的5種方式及擴(kuò)展

    這篇文章主要給大家介紹了關(guān)于Vue路由跳轉(zhuǎn)的5種方式及擴(kuò)展,在Vue中路由是一種用于導(dǎo)航和管理頁面之間跳轉(zhuǎn)的機(jī)制,Vue Router是Vue官方提供的路由管理器,需要的朋友可以參考下
    2023-11-11
  • 在vue框架下使用指令vue add element安裝element報(bào)錯(cuò)問題

    在vue框架下使用指令vue add element安裝element報(bào)錯(cuò)問題

    這篇文章主要介紹了在vue框架下使用指令vue add element安裝element報(bào)錯(cuò)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • Vue3項(xiàng)目中預(yù)覽并打印PDF的兩種方法

    Vue3項(xiàng)目中預(yù)覽并打印PDF的兩種方法

    最近在項(xiàng)目開發(fā)中碰到一個(gè)需求是在頁面中展示pdf預(yù)覽功能,下面這篇文章主要給大家介紹了關(guān)于Vue3項(xiàng)目中預(yù)覽并打印PDF的兩種方法,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05

最新評(píng)論

沂水县| 南昌县| 淮安市| 沁源县| 南平市| 永春县| 新丰县| 浦东新区| 南乐县| 洛阳市| 郎溪县| 堆龙德庆县| 星子县| 巴林右旗| 鞍山市| 连南| 客服| 榆林市| 玛沁县| 长丰县| 德阳市| 灵丘县| 崇仁县| 桓仁| 阳谷县| 霸州市| 韶关市| 镇康县| 阆中市| 西青区| 南木林县| 翁牛特旗| 黑水县| 陕西省| 堆龙德庆县| 龙山县| 三原县| 东辽县| 都昌县| 宿州市| 南康市|