Vue(一)——快速上手+事件

一、快速上手:el,data,methods以及data-binding

1.新建空白项目,创建index.html,style.css,app.js三个文件

2.index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>银烛秋光冷画屏</title>
    <!--<script src="https://unpkg.com/vue"></script>-->
    <script src="https://cdn.jsdelivr.net/npm/vue"></script>
    <link rel="stylesheet" href="style.css">
</head>
<body>
    <div id="vue-app">
        <!--普通data取值-->
        <p>{{name}}</p>
        <p>{{job}}</p>
        <!--methods方法-->
        <h1>{{greet('afternoon')}}</h1>
        <!--属性绑定-->
        <a v-bind:href="website">web开发</a>
        <input type="text" v-bind:value="job">
        <!--属性绑定:html标签-->
        <p v-html="websiteTag"></p>
    </div>
    <script src="app.js"></script>
</body>
</html>

3.app.js

new Vue({
    el:'#vue-app',
    data:{
        name:'mr.wu',
        job:'web开发',
        website:'https://www.bilibili.com/video/av44699553/?p=5',
        websiteTag:"<a href='https://www.bilibili.com/video/av44699553/?p=5'>web开发</a>"
    },
    methods:{
        greet:function (time) {
            return 'good '+time+" "+this.name;
        }
    }
});

二、事件:@click,@dblclick,v-on:mousemove

1.index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>银烛秋光冷画屏</title>
    <!--<script src="https://unpkg.com/vue"></script>-->
    <script src="https://cdn.jsdelivr.net/npm/vue"></script>
    <link rel="stylesheet" href="style.css">
</head>
<body>
    <div id="vue-app">
        <h1>Event</h1>

        <!--单机事件-->
        <button @click="add(1)">单击加一岁</button>
        <button v-on:click="subtract(1)">单击减一岁</button>

        <!--双击事件-->
        <button @dblclick="add(1)">双击加一岁</button>
        <button v-on:dblclick="subtract(1)">双击减一岁</button>

        <!--单机传入参数不同-->
        <button @click="add(10)">单击加10岁</button>
        <button v-on:click="subtract(10)">单击减10岁</button>
        <p>my age is {{age}}</p>

        <!--鼠标移动事件,获取鼠标移动偏移量-->
        <div id="canvas" v-on:mousemove="updateXY">
            {{x}},{{y}}
        </div>
    </div>
    <script src="app.js"></script>
</body>
</html>

2.style.css

#canvas{
    width:600px;
    padding: 200px 20px;
    text-align: center;
    border: 1px solid #333333;
}

3.app.js

new Vue({
    el:'#vue-app',
    data:{
        age:30,
        x:0,
        y:0
    },
    methods:{
        add:function (inc) {
            this.age += inc;
        },
        subtract:function (desc) {
            this.age -= desc;
        },
        updateXY:function (event) {
            // console.log(event);//event事件包含了offsetX,offsetY属性
            this.x = event.offsetX;
            this.y = event.offsetY;
        }
    }
});

 

转载于:https://my.oschina.net/u/4116631/blog/3051481

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值