美文网首页程序员
vuejs学习思路2 - 常用指令

vuejs学习思路2 - 常用指令

作者: 前端丶米店 | 来源:发表于2017-04-12 13:17 被阅读0次

    <b>*如果不明白script的写法,请点击:点我查看vuejs学习思路-最简单的vue应用</b>

    vuejs除了v-model的双向绑定,还有一些其他比较实用的指令,这些指令是使用vuejs时常用的一些指令。

    1、v-if :if判断
    <div id="div-3">
        <p v-if='judge'>judge是true</p>
    </div>
    
    <script>
    //app3只是新建vue对象的名字,可以自己随便取,只要一个页面没有重复即可
    var app3 = new Vue({
        el:'#div-3',
        data:{
            judge:true
        }
    })
    </script>
    
    

    正常js流程:先js判断judge是否是真,然后把值写入p标签里。vue省去了大量代码,非常好用。

    2、v-show:跟v-if类似,不同的是,v-if判断后,如果为false,则它的绑定标签在页面不显示,而v-show是显示的,只是style变成display:none。
    <div id="div-6">
        <p v-show='judge'>judge是true,所以我的style变成display:none</p>
    </div>
    <script>
    var app6 = new Vue({
        el:'#div-6',
        data:{
            message:false
        }
    });
    </script>
    
    3、v-else:必须跟在v-if/v-show指令之后,不然不起作用;
    <div id="app">
    <h1 v-if="age >= 25">Age: {{ age }}</h1>
    <h1 v-else>Name: {{ name }}</h1>
    <hr>
    <h1 v-show="name.indexOf('cool') = 0">Name: {{ name }}</h1>
    <h1 v-else>Sex: {{ sex }}</h1>
    </div>
    
    
    <script>
        var vm = new Vue({
            el: '#app',
            data: {
                age: 21,
                name: 'keepcool',
                sex: 'Male'
            }
        })
    </script>
    
    4、v-for:foreach 数组,类似php中的foreach($todos as $key =>$vo)
    <div id="div-4">
        <p v-for='vo in todos'>
            {{ vo.text }}
        </p>
    </div>
    
    <script>
    var app4= new Vue({
        el:'#div-4',
        data:{
            todos:[
                {text:"我是数组数据1"},
                {text:"我是数组数据2"}
            ]
        }
    });
    </script>
    

    todos被定义成数组形式,里面的每条数据都是json数据。v-for='vo in todos' 里的vo in todos 意思就像foreach。只可意会不可言传~~~

    5、v-on:绑定一个自定义的js方法(当然也是在vue对象中定义的)
    <div id="div-5">
        <p>{{ message }}</p>
        <button v-on:click="clickAction">点我反转</button>
    </div>
    
    <script>
    var app5 = new Vue({
        el:'#div-5',
        data:{
            message:"我是超人"
        },
        methods:{
            clickAction: function(){
                this.message    = this.message.split('').reverse().join('')
            }
        }
    });
    </script>
    

    v-on:click="clickAction"意思是click响应绑定定义的vue对象中的methods中的clickAction方法,点击这个按钮就执行这个方法了。this.message = this.message.split('').reverse().join('')意思就是把前面定义的message反转。
    绑定的方法写法:

    methods:{
            方法名: function(){
                执行的操作
            }
        }
    

    <h1>本文为原创文章,转载请注明出处</h1>
    <h1>觉得本文对你有帮助</h1>
    关注简书mid米店,持续分享中。。。

    相关文章

      网友评论

        本文标题:vuejs学习思路2 - 常用指令

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