vue双击事件_VUE基础学习本地应用

本地应用

本地应用主要是通过一些指令来操作,比如:v-text、v-html、v-on、v-show、v-if、v-bind、v-for、v-on补充、v-model等等

1、v-text指令

  • 作用:设置标签的内容(textContent);

  • 默认写法会替换全部内容,使用差值表达式{{}}可以替换指定内容;

  • 内部支持表达式;

样例:


<div id="app-text">
<h2 v-text="message+'你好!'">h2>
<h2 v-text="info+'你好!'">h2>
<h2>{{message + '你好!'}}h2>
div>

<script>var test = new Vue({el: "#app-text",data: {message: "hello Vue!",info: "vue 学习中!"
}
})script>

效果如下:

54ced39517961fb3eacbfd8d49b41cd4.png
image-20200917233611908

2、v-html指令

  • 作用:设置元素的innerHTML;
  • 内容中有html结构会被解析为标签;
  • v-text指令无论内容是什么,只会解析为文本;
  • 解析文本使用v-text,解析html结构使用v-html;

样例:


<div id="app-html">
<p v-html="content">p>
<p v-text="content">p>
div>

<script>var test = new Vue({el: "#app-html",data: {content:"百度首页"
}
})script>

效果如下:

bab87dc60372f411ddb748f2a3405d6f.png
image-20200917225826954

3、v-on指令(v-on:可以简写为@符号)

  • 作用:为元素的绑定事件;
  • 事件名不需要写on;
  • 指令可以简写为@;
  • 绑定的方法定义在methods属性中;
  • 方法内部通过this关键字可以访问定义在data中的数据;

样例:


<div id="app-on">
<p><input type="button" value="v-on单击指令" v-on:click="doit">p>
<p><input type="button" value="v-on单击简写" @click="doit">p>
<p><input type="button" value="双击事件" @dblclick="doit">p>
<h2 @click="changeFood">{{food}}h2>
div>

<script>var test = new Vue({el: "#app-on",data: {food: "虎皮青椒,单击一下试一试。"
},methods: {doit: function () {
alert("Do it OK?")
},changeFood: function () {this.food += "神奇吗?可以一直单击一直增加哦!"
}
}
})script>

效果如下:

442a14626b81c214d7478bd6d078d7f1.png
image-20200917232507933

4、计数器

  • 创建Vue示例时:el(挂载点),data(数据),methods(方法);

  • v-on指令的作用是绑定事件,简写为@;

  • 方法中通过this,关键字获取data中的数据;

  • v-text指令的作用是:设置元素的文本值,简写{{}};

  • v-html指令的作用是:设置元素的innerHTML;

  • 步骤如下:

1.data中定义数据,比如:num;

2.methods中添加两个方法,比如:add(递增),sub(递减);

3.使用v-text将num设置给span标签;

4.使用v-on将add,sub分别绑定给+,-按钮;

5.累加的逻辑:小于10累加,否则提示错误信息;

6.递减的逻辑:大于0递减,否则提示错误信息;

样例:


<div id="app-calculator">

<div class="input-num">
<button @click="sub">-button>
<span>{{num}}span>
<button @click="add">+button>
div>
div>

<script>var test = new Vue({el: "#app-calculator",data: {num: 1
},methods: {add: function () {// console.log('add');if (this.num<10){this.num++;
}else{
alert("别点啦,已经最大拉...")
}
},sub: function () {// console.log('sub');if (this.num>0){this.num--;
}else{
alert("别点啦,已经最小拉...")
}
}
}
})script>

效果如下:

a6561d5d81c1572c8112d42c36b531f3.png
image-20200919211304375
cd4d44f02fea45b478eb81a57d932504.png
image-20200919211341089
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值