- "app">
- <div @click="divClick">
- <button @click="btnClick">按钮button>
- div>
-
- <script src="../js/vue.js">script>
- <script>
- const app=new Vue({
- el:"#app",
- data://注意此处的花括号
- {
- message:"这是一个vue模板"
- },
- methods:{
- divClick(){
- console.log("divClick");
- },
- btnClick(){
- console.log("btnClick");
- }
- }
-
- })
- script>
点击按钮,事件冒泡,两个都发生
希望达到只有点击“点击这里”时,divClick才执行,而不是点击按钮时执行。达到此效果需要阻止按钮的事件冒泡。
- "app">
- <div @click="divClick">
- 点击这里<button @click="btnClick">按钮button>
- div>
添加修饰符stop 后再次点击按钮
- "app">
- <div @click="divClick">
- 点击这里<button @click.stop="btnClick">按钮button>
- div>
此时有打印有提交
- <input type="submit" value="提交" @click="submitClick">
- form>
- submitClick(){
- console.log(submitClick);
- }
添加prevent修饰,此时只有打印没有提交
- <input type="submit" value="提交" @click.prevent="submitClick">
- form>
- submitClick(){
- console.log("submitClick");
- }
3.keyup——监听键盘某个键的点击
监听所有按钮,准确说是手抬起的次数
-
- "text" @keyup="keyUp">
- keyUp()
- {
- console.log("keyUp");
- }
只监听回车按钮
"text" @keyup.enter="keyUp">
4.once——只触发一次回调
希望只有第一次点按钮有反应,之后无反应
<button @click.once="btn2Click">按钮2button>
- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>Titletitle>
- head>
- <body>
- <div id="app">
- <div @click="divClick">
- 点击这里<button @click.stop="btnClick">按钮button>
- div>
- <form action="baidu">
- <input type="submit" value="提交" @click.prevent="submitClick">
- form>
-
- <input type="text" @keyup.enter="keyUp">
- <button @click.once="btn2Click">按钮2button>
- div>
-
-
- <script src="../js/vue.js">script>
- <script>
- const app=new Vue({
- el:"#app",
- data://注意此处的花括号
- {
- message:"这是一个vue模板"
- },
- methods:{
- divClick(){
- console.log("divClick");
- },
- btnClick() {
- console.log("btnClick");
- },
- submitClick(){
- console.log("submitClick");
- },
- keyUp()
- {
- console.log("keyUp");
- },
- btn2Click(){
- console.log(" btn2Click");
- }
- }
-
- }
- )
- script>
-
- body>
- html>