【Vue】基本语法 [ 条件判断(v-if)、循环(v-for)、用户输入处理(v-model) ]和常用事件

一、条件

v-if:用于判断,可以决定所作用的标签是否显示。

<div id="app01">
  <p v-if="seen">现在你看到我了,我是true</p>
</div>
var app = new Vue({
  el: '#app01',
  data: {
    seen: true
  }
})

在这里插入图片描述


v-else-if :对,没错就是else if

v-else:就是 else

<div id="app02">
  <p v-if="size < 5">现在你看到我了,我小于5</p>
  <p v-else-if="size > 5">现在你看到我了,我大于5</p>
  <p v-else >现在你看到我了,我也不知道我多少</p>
  
</div>
var app = new Vue({
  el: '#app02',
  data: {
    size: 10
  }
})

在这里插入图片描述

二、循环

v-for:是被作用的标签可以循环重复

i in items:从vue属性items中去值,存入i

{{ i.item}}:获取i(从vue属性items中去值)中的item属性

<div id="app03">
  <ol>
    <li v-for="i in items">
      {{ i.item}}
    </li>
  </ol>
</div>
var app = new Vue({
  el: '#app03',
  data: {
    items: [
      { item: '学习 JavaScript' },
      { item: '学习 Vue' },
      { item: '整个牛项目' }
    ]
  }
})

在这里插入图片描述

三、处理用户输入选择

vue中经常使用到和这类表单元素。vue使用v-model实现这些标签数据的双向绑定,它会根据控件类型自动选取正确的方法来更新元素。

反转字符串:

v-on:用于添加一个事件监听器,通过它调用在 Vue 实例中定义的方法

click:点击事件

methods: Vue 实例中定义的方法都要存储到methods中

reverseMessage:自定义的方法(方法名)

<div id="app04">
  <p>{{ message }}</p>
  <button v-on:click="reverseMessage">反转消息</button>
</div>
var app = new Vue({
  el: '#app04',
  data: {
    message: 'Hello Vue.js!'
  },
  methods: {
    reverseMessage: function () {
      this.message = this.message.split('').reverse().join('')
    }
  }
})

在这里插入图片描述
在这里插入图片描述


input操作

v-model:它能轻松实现表单输入和应用状态之间的双向绑定

v-model.lazy:添加 lazy 修饰符,从而转变为使用 change 事件进行同步

v-model.trim:去除字符串首尾的空格

v-model.number:将数据转化为值类型


1.实现响应用户输入:

<div id="app05">
  <p>{{ message }}</p>
  <input v-model="message">
</div>
var app = new Vue({
  el: '#app05',
  data: {
    message: '请重新输入'
  }
})

在这里插入图片描述


2.捕获下拉框中的被选择内容:

v-model=“selected”:其中的selected可以自定义,如果自定义那么{{selected}}要改成{{自定义}},data中的selected也要改。总之这三个地方必须统一。

<div id="app06">
  <select v-model="selected">
    <option value="" selected disabled>====请选择====</option>
    <option value="A被选">A</option>
    <option value="B被选">B</option>
    <option value="C被选">C</option>
  </select>
  <span>Selected: {{ selected }}</span>
</div>
 var app = new Vue({
    el: '#app06',
    data: {
      selected: ''
    }
  })

在这里插入图片描述


3.捕获单选框被选择的内容:

<div id="app07">
    <input type="radio" id="small" value="small被选择" v-model="picked">
    <label for="small">small</label>
    <br>
    <input type="radio" id="big" value="big被选择" v-model="picked">
    <label for="big">big</label>
    <br><br>
    <span>Picked: {{ picked }}</span>
</div>
var app = new Vue({
    el: '#app07',
    data: {
      picked: ''
    }
  })

在这里插入图片描述


4.捕获复选框被选择的内容:

<div id="app07">
    <input type="checkbox" id="one" value="选项一被选择" v-model="checkedNames">
    <label for="one">选项一</label>
    <input type="checkbox" id="two" value="选项二被选择" v-model="checkedNames">
    <label for="two">选项二</label>
    <input type="checkbox" id="three" value="选项三被选择" v-model="checkedNames">
    <label for="three">选项三</label>
    <br>
    <span>Checked names: {{ checkedNames }}</span>
</div>
var app = new Vue({
    el: '#app07',
    data: {
      checkedNames: []
    }
  })

在这里插入图片描述

四、常用事件

事件事件描述
bind向匹配元素附加一个或更多事件处理器
blur触发、或将函数绑定到指定元素的 blur 事件
change触发、或将函数绑定到指定元素的 change 事件
click触发、或将函数绑定到指定元素的 click 事件
dblclick触发、或将函数绑定到指定元素的 double click 事件
delegate向匹配元素的当前或未来的子元素附加一个或多个事件处理器
die移除所有通过 live() 函数添加的事件处理程序。
error触发、或将函数绑定到指定元素的 error 事件
event.isDefaultPrevented返回 event 对象上是否调用了 event.preventDefault()。
event.pageX相对于文档左边缘的鼠标位置。
event.pageY相对于文档上边缘的鼠标位置。
event.preventDefault阻止事件的默认动作。
event.result包含由被指定事件触发的事件处理器返回的最后一个值。
event.target触发该事件的 DOM 元素。
event.timeStamp该属性返回从 1970 年 1 月 1 日到事件发生时的毫秒数。
event.type描述事件的类型。
event.which指示按了哪个键或按钮。
focus触发、或将函数绑定到指定元素的 focus 事件
keydown触发、或将函数绑定到指定元素的 key down 事件
keypress触发、或将函数绑定到指定元素的 key press 事件
keyup触发、或将函数绑定到指定元素的 key up 事件
live为当前或未来的匹配元素添加一个或多个事件处理器
load触发、或将函数绑定到指定元素的 load 事件
mousedown触发、或将函数绑定到指定元素的 mouse down 事件
mouseenter触发、或将函数绑定到指定元素的 mouse enter 事件
mouseleave触发、或将函数绑定到指定元素的 mouse leave 事件
mousemove触发、或将函数绑定到指定元素的 mouse move 事件
mouseout触发、或将函数绑定到指定元素的 mouse out 事件
mouseover触发、或将函数绑定到指定元素的 mouse over 事件
mouseup触发、或将函数绑定到指定元素的 mouse up 事件
one向匹配元素添加事件处理器。每个元素只能触发一次该处理器。
ready文档就绪事件(当 HTML 文档就绪可用时)
resize触发、或将函数绑定到指定元素的 resize 事件
scroll触发、或将函数绑定到指定元素的 scroll 事件
select触发、或将函数绑定到指定元素的 select 事件
submit触发、或将函数绑定到指定元素的 submit 事件
toggle绑定两个或多个事件处理器函数,当发生轮流的 click 事件时执行。
trigger所有匹配元素的指定事件
triggerHandler第一个被匹配元素的指定事件
unbind从匹配元素移除一个被添加的事件处理器
undelegate从匹配元素移除一个被添加的事件处理器,现在或将来
unload触发、或将函数绑定到指定元素的 unload 事件

爱情不是依附,爱情是各自独立坚强,然后努力走到一起,愿有情人携手奋斗…
请添加图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值