写点什么

Vue-2- 常用指令

发布于: 2021 年 05 月 22 日
Vue-2-常用指令

指令

Vue 中,有很多常用的指令,你可以理解它是可以绑定在指定的 action 上的。

实例

v-bind

v-bind 就是 Vue 中一个常见的指令,其中 v- 前缀代表这是 Vue 为我们提供的指令,下面的例子将实现鼠标悬停在被绑定的元素上后显示它的 title 信息。

代码

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta http-equiv="X-UA-Compatible" content="IE=edge">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>Document</title>    <script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script></head><body>    <div id="vb">        <span v-bind:title="info">悬停显示</span>    </div>
    <script>        var app2 = new Vue        ({                el: '#vb',                data: {                    info: '此页面加载于:' + new Date().toLocaleString()                }            })    </script></body></html>
复制代码

页面效果

v-if

此指令可以实现条件判断,以下实例可以实现当点击按钮时,通过判断绑定元素的 judge 属性,进行元素的显示和隐藏。

代码

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta http-equiv="X-UA-Compatible" content="IE=edge">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>Document</title>    <script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script></head><body>
    <div id="vif">        <button v-on:click="func1">点我</button>        <p v-if="judge">当点击上面的按钮时我会隐藏!</p>    </div>

    <script>        var app4 = new Vue({            el:'#vif',            data:{                judge:true            },            methods:{                func1:function(){                    if(this.judge == true){                        this.judge=false;                    }else{                        this.judge=true;}
                }            }        })    </script></body></html>
复制代码

以上代码中,v-on 是用来监听元素的事件,当事件发生的时候会触发对应的方法。

页面效果

点击按钮

再次点击

v-for

v-for 可以实现对元素的 for 循环,以下实例可以实现页面元素的循环渲染,Vue 提供可遍历数据。

代码

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta http-equiv="X-UA-Compatible" content="IE=edge">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>Document</title>    <script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script></head><body>
    <div id="floop">        <ol>            <li v-for="i in is">                {{ i }}            </li>        </ol>    </div>
    <script>        var app3 = new Vue({            el: '#floop',            data:{                is:[                    '西安',                    '北京',                    '上海'                ]            }        })    </script></body></html>
复制代码

页面效果

v-for 进阶

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta http-equiv="X-UA-Compatible" content="IE=edge">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>Document</title>    <script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script></head><body>
    <div id="floop">        <ul>            <li v-for="i in is">                {{ i.name }}: {{ i.goods }}            </li>        </ul>    </div>
    <script>        var app3 = new Vue({            el: '#floop',            data:{                is:[                    {'name': '西安','goods': '面食'},                    {'name': '北京','goods': '肉食'},                    {'name': '上海','goods': '菜食'}                ]            }        })    </script>
</body></html>
复制代码

页面效果

Tip: 如上,VueObserver 帮我们将普通的 DOM 对象转换成了响应式对象。


以上就是今天的全部内容了,感谢您的阅读,我们下节再会。

发布于: 2021 年 05 月 22 日阅读数: 21
用户头像

公众号:Python测试和开发 2018.10.14 加入

混迹于云原生领域的测试开发。

评论 (1 条评论)

发布
没有更多了
Vue-2-常用指令