vue的内置指令练习 和 vue的事件练习

目录

1.vue的内置指令练习

2. vue事件的练习


 

1.vue的内置指令练习

<head>
    <title>内置指令</title>
    <script src="../vue.js"></script>
</head>
<body>
    <div id="app">
        <!-- 建议用 v-if   -->
        <p><div v-if="isShow">v-if</div></p>
        <p><div v-show="isShow">v-show</div></p>
        <p><button @click="isShow=!isShow">隐藏/显示</button></p>
        <p>———————————————————————————————————————————————————————————————</p>
        <!-- v-for 可以实现页面的渲染 -->
        <!-- 遍历数组 -->
        <div v-for="(value,i) in list">
            索引:{{i}}。值:{{value}}
        </div>
        <!-- 遍历对象数组-->
        <div v-for="(user,i) in olist">
            索引:{{i}}.名称:{{user.name}}.年龄:{{user.age}}
        </div>
        <!-- 遍历对象 -->
        <div v-for="(value,i,j) in object">
            索引:{{j}}. {{i}}:{{value}}
        </div>
        <!-- 遍历数字 -->
        <div v-for="(v,i) in 5">
            索引:{{i}}。值{{v}}。
        </div>
        <p>———————————————————————————————————————————————————————————————</p>
        <!-- v-model  双向数据绑定  常用 -->
        <p><input type="text" v-model="msg"></p>
        <!-- v-text 单向数据输出 不能表单表现  只能从data向前端页面输出 -->
        <p><input type="text" v-text="msg"></p>
        <p v-text="msg"></p>
        <!-- v-html 将标签通过前端去展示   不能表单表现-->
        <p v-html="msg"></p>
        <!-- v-bind 改变属性值 , 单向 -->
        <p><input type="text" v-bind:value="msg"></p>

    </div>
    <script>
        var vm = new Vue({
            el:'#app',
            data:{
                msg:'<h1>双向数据绑定演示</h1>',
                list:['软件','14班','同学们好'],
                olist:[{name:"张三",age:18},{name:"李四",age:19},{name:"王五",age:20}],
                object:{
                    name:"张大仙",
                    age:17,
                    phone:123456789
                },
                isShow:true
            }
        })
    </script>
</body>

alt+b快捷键运行代码的结果如下:

2. vue事件的练习

<!DOCTYPE html>
<head>
    <title>提交表单事件</title>
    <script src="../vue.js"></script>
    <style>
        .Odiv1 {width: 80px; height: 80px; background: #aaa; margin: 5px;}
        .Odiv2 {width: 50px; height: 50px; background: #ccc;}
    </style>
</head>
<body>
    <div id="app" >
        <p>{{msg}}</p>
        <p>————————————————————————————————————————————————————————————</p>
        <div class="Odiv1" v-on:click.self="doParent">a
            <div class="Odiv2" v-on:click="doThis">b</div>
        </div>
        <div class="Odiv1" v-on:click="doParent">c
            <div class="Odiv2" v-on:click.self="doThis">d</div>
        </div>
        <p>————————————————————————————————————————————————————————————</p>
        <!-- .prevent 阻止事件跳转 -->
        <a href="http://www.baidu.com" @click.prevent>跳转</a>
        <p>————————————————————————————————————————————————————————————</p>
        
        <!-- 按键     keyup.enter当enter键抬起时执行方法submit -->
        <!--  .stop 阻止冒泡  -->
        <!-- .capture 捕获事件优先执行   改变相反冒泡顺序 -->
        <!-- .capture .stop 一起用 只执行此事件 -->
        <!-- .once 事件只执行一次    常用,防止重复点击 -->
        <div v-on:keyup.enter="submit3">
            <p v-on:keyup.enter.once="submit2">   
                <input type="text" v-on:keyup.enter="submit1">
            </p>
        </div>
    </div>

    <script>
        var vm = new Vue({
            el:'#app',
            data:{
                msg:"数据"
            },
            methods:{
                submit1(){
                    console.log("表单已提交1") //alert页面输出
                },
                submit2(){
                    console.log("表单已提交2")//console.log控制台输出
                },
                submit3(){
                    console.log("表单已提交3")
                },
                doParent(){
                    console.log("doParent")
                },
                doThis(){
                    console.log("doThis")
                }
            }
        })
    </script>
</body>

alt+b快捷键运行代码结果如下:

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值