美文网首页
2018-09-14

2018-09-14

作者: Rascar | 来源:发表于2018-09-14 15:36 被阅读0次

    1.Vue中的v-bind的应用

    1. 主要用于属性绑定
      2.也可以直接绑定数据里的一个对象
      3.v-bind的简写使用冒号(:)
      列:
    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <script src="js/vue.js"></script>
        </head>
        <body>
            <div id="box">
                <img v-bind:src="url" v-on:click="btn"/>
            </div>
            <script>
                //v-bind的应用
                new Vue({
                    el:"#box",
                    data:{
                        url:"img/1.png"
                    }
                })
            </script>
    

    案例2.图片的切换

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <script src="js/vue.js"></script>
        </head>
        <body>
            <div id="box">
                <img v-bind:src="url" v-on:click="btn"/>
            </div>
            <script>
                //图片切换
                new Vue({
                    el:"#box",
                    data:{
                        url:"img/1.png",
                        flag:true
                    },
                    methods:{
                        btn:function(){
    //                      this.url="img/梦妆.png"
                            if(this.flag){
                                this.url="img/梦妆.png"
                                this.flag:false
                            }else{
                                this.url="img/1.png"
                                this.flag:true
                            }
                        }
                    }
                })
            </script>
        </body>
    </html>
        </body>
    </html>
    

    2.v-if v-else v-if....else的应用

    值得注意的是:

    ①他们只能是 兄弟元素

    ②v-else-if 上一个兄弟元素必须是 v-if

    ②v-else 上一个兄弟元素必须是 v-if 或者是 v-else-if

    ④一个判断语句组中只能有一个”显示“

    ⑤判断为 false 的语句,对应的元素不是 隐藏(display:"none") ,而是不会存在对应的 DOM 在html文件中
    1.v-if是一条指令,所以必须将他添加到一个元素上
    v-if案例:

    <!DOCTYPE html>
    <html>
            <meta charset="utf-8" />
    <head>
        <title></title>
        <script src="js/vue.js"></script>
    </head>
    <body>
        <div id="app">
            <span v-if="seen">
                我出现了!
            </span>
        </div>
        <script type="text/javascript">
            var app = new Vue({
            el: '#app',
            data: {
                seen: true
                }
            })
        </script>
        </html>
    

    2.v-else和v-if.....else 的应用

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <script src="js/vue.js"></script>
        </head>
        <body>
            <div id="box">
                <p v-if="tim==0">11</p>
                <p v-else-if="tim==1">22</p>
                <p v-else-if="tim==2">33</p>
                <p v-else-if="tim==3">44</p>
                <p  v-else-if="tim==4">55</p>
                <p  v-else-if="tim==5">66</p>
                <p v-else-if="tim==6">77</p>
                <p v-else="tim==7">888</p>
            </div>
            <script>
                new Vue({
                    el:"#box",
                    data:{
                        tim:Math.floor(Math.random()*(7-0+1)+0)
                    }
                })
            </script>
        </body>
    </html>
    

    v-show的应用

    1.不同的是带有 v-show 的元素始终会被渲染并保留在 DOM 中。v-show 只是简单地切换元素的 CSS 属性 display。
    案例

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
        </head>
        <body>
            <div id="box">
                <!--<h1 v-show="see">你好</h1>-->
                <button @click="an">隐藏</button>
                <p style="width: 80px;background: red;height: 50px;" v-show="p"></p>
            </div>
            <script src="js/vue.js"></script>
            <script>
    //          new Vue({
    //              el:"#box",
    //              data:{
    //                  see:true
    //              }
    //          })
    
               new Vue({
                el:"#box",
                data:{
                    p:true
                },
                methods:{
                    an:function(){
                        //第一种
    //                  this.p=!this.p
                                //第二种
                             if(this.p){
                                this.p=false
                             }else{
                                this.p=true
                             }
                    }
                }
               })
            </script>
        </body>
    </html>
    
    

    相关文章

      网友评论

          本文标题:2018-09-14

          本文链接:https://www.haomeiwen.com/subject/xiwngftx.html