Vue学习之路--数据绑定-操作指令-点击事件--键盘事件

vue

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>Vue指令学习</title>

<style>

.red{

color: red;

}

.size{

font-size: larger;

}

[v-cloak] {

display: none;

}

</style>

</head>

<body>

<div id="app">

<!-- 各种数据操作指令 -->

<div>

<!-- v-cloak:防止闪动、页面先显示{{msg}}、然后再出现结果的情况 -->

<!-- 填充纯文本 -->

<div v-cloak v-text="msg"></div>

<!-- 填充富文本 -->

<div v-html="msg_html"></div>

<!-- 是否显示当前单元 -->

<div v-show="is_show">当前是否显示</div>

<!-- if else if else -->

<div v-if="age>60">老年人</div>

<div v-else-if="age<60 && age>30">中年人</div>

<div v-else-if="age<30 && age>18">年轻人</div>

<div v-else>小屁孩</div>

<!-- 单数组for循环 -->

<div>

<ul>

<li v-for="item in str_arr">

{{item}}

</li>

</ul>

<ul>

<!-- index:代表序列号 -->

<li v-for="(item,index) in str_arr">

{{index+"----"+item}}

</li>

</ul>

</div>

<!-- 对象数组for循环 -->

<div>

<ul>

<!-- v-for 的默认行为会尝试原地修改元素而不是移动它们。要强制其重新排序元素,你需要用特殊 -->

<!-- key 来提供一个排序提示: -->

<li :key="item.ID" v-for="(item,index) in json_arr">

当前序号:{{index}}

ID:{{item.ID}}

姓名:{{item.name}}

年龄:{{item.age}}

</li>

</ul>

</div>

</div>

<!-- v-on 事件 -->

<div>

<button v-on:click="Onclick">点击事件</button>

<button @click="Onclick">点击事件(简写)</button>

<button data-type="button1" data-name="BUT" @click="OnclickMsg(\'hello\',$event)">点击事件(传参数)</button>

<!-- 键盘事件 -->

<!-- 如果想实现自定义键盘事件,请先获取相应的键盘对应的code值.再将该code值赋到自定义方法里面 -->

<input type="text" v-on:keyup=\'keyupCode\' value="获取按键修饰符" />

<input type="text" v-on:keyup.空格=\'keyup_kong\' value="调用空格事件" />

<input type="text" v-on:input=\'keyup_input\' value="文本框输入事件" />

<input type="text" v-on:blur=\'keyup_blur\' value="失去焦点事件" />

<!-- 阻止冒泡事件

v-on:click.stop="handle"

.prevent阻止默认行为

v-on:click.prevent="handle" -->

<div @click="Onclick">

<button data-type="button1" data-name="BUT" @click.stop="OnclickMsg(\'hello\',$event)">阻止冒泡</button>

</div>

<!-- a标签绑定url -->

<a v-bind:href=\'url\'>跳百度</a>

<a :href=\'url\'>跳百度2</a>

<!-- prevent:组止默认行为 -->

<a v-on:click.prevent="Onclick" href="http://www.baidu.com">被阻止默认行为的A</a>

<form>

<div @click="Onclick">

<!-- 这种写法会调用:Onclick和OnclickMsg方法。而且也会执行sumbit的默认事件 -->

<!-- <button type="submit" data-type = "button1" data-name = "BUT" v-on:click="OnclickMsg(\'hello\',$event)">按钮</button> -->

<!-- 只执行OnclickMsg方法.并不会执行sumbit的默认事件 -->

<button type="submit" data-type="button1" data-name="BUT" v-on:click.stop.prevent="OnclickMsg(\'hello\',$event)">按钮</button>

</div>

</form>

<!-- once:点击回调只会触发一次 -->

<button type="button" data-type="button1" data-name="BUT" v-on:click.once="Onclick">只能点击一次的按钮</button>

</div>

<!-- v-bind 事件(对象属性操作) -->

<div>

<img v-bind:src="bind_obj.imageSrc">

<!-- 缩写 -->

<img :src="bind_obj.imageSrc">

<!-- 针对class操作 -->

<!-- <div :class="{bind_obj.redClass.name : bind_obj.redClass.is}"> -->

<div :class="{red:bind_obj.isred}">

<span>{{msg}}</span>

</div>

<div :class="[bind_obj.red_class,bind_obj.size_class]">

<span>{{msg}}</span>

</div>

</div>

</div>

</body>

<script type="text/javascript" src="js/vue.js"></script>

<script type="text/javascript">

/* 自定义在输入框里面按空格的事件 */

Vue.config.keyCodes.空格 = 32;

var vm = new Vue({

el: "#app",

data: {

msg: "我是msg内容",

msg_html: "<h1>我是标题</h1>",

is_show: true,

age: 27,

str_arr: ["1", "2", "3"],

json_arr: [{

ID: 1,

name: \'王1\',

age: 18

}, {

ID: 2,

name: \'王2\',

age: 17

}, {

ID: 3,

name: \'王3\',

age: 19

}],

url: \'http://www.baidu.com\',

bind_obj: {

imageSrc: \'~/../image/logo.jpg\',

isred:true,

red_class:\'red\',

size_class:\'size\'

},

input_obj:{

input_str:\'\',

textarea_str:\'\',

checkedNames:[],

for_checked:[]

}

},

methods: {

/*

Vue方法:

*/

Onclick: function() {

alert("当前按钮被点击了")

},

OnclickMsg: function(msg, event) {

/* 显示当前对象的文本信息 */

console.log(event.target.innerHTML)

/* 显示当前对象的自定义属性 */

console.log(event.target.dataset.type)

console.log(event.target.dataset.name)

alert(msg)

},

keyupCode: function(event) {

/* 显示keyCode就是对应的键盘code */

console.log(event.keyCode)

},

keyup_kong: function() {

console.log(\'在输入框按下空格的事件\')

},

keyup_input: function(event) {

//获取当前输入框当前输入的值

console.log(event.target.value)

},

keyup_blur: function() {

console.log(\'当前文本框失去焦点\')

}

}

})

</script>

</html>

以上是 Vue学习之路--数据绑定-操作指令-点击事件--键盘事件 的全部内容, 来源链接: utcz.com/z/380712.html

回到顶部