vue 回车查询 按钮_从零开始学习vue
在github搜小程序我们可以看到许多用许多用vue开发的实例。
到底什么是vue,我们不妨浪费一天时间来了解一下。
一、什么是vue
Vue是一个JavaScript框架。作者是国内常年混迹知乎的一个前端大神。
它的特点是响应式的双向数据绑定,和小程序很相似。
vue官网地址:https://cn.vuejs.org/
二、学习vue需要掌握什么基础
1、掌握HTML/CSS/JavaScript/AJAX基础知识
2、掌握VSCode基本操作,如果对这个工具不了解可以看我上一篇文章
三、vue入门
1、安装vue非常简单,只需要新建一个html,通过如下方式引入vue:
2、vue一个完整的入门案例
Vue基础
{{ message }}
var app = new Vue({ el: '#app', data: { message: 'Hello Vue!' } })
运行结果。可以看到div里展示的是js里面的data的值
四、el挂载点
js里有一句话:el: '.app'。意思是html里id="app"的标签里的数据都受vue管理,可以使用{{xxx}}的方式去获取data里的值。
el注意事项:
el元素命中的外部,不被vue管理
el元素命中的内部也被vue管理,可以被其他元素嵌套
el可以用其他选择器,但是主要推荐用id选择器
el支持大部分双标签(不支持html和body标签),不支持单标签
Vue基础 {{ message }}
{{ message }}
{{ message }}
var app = new Vue({ //el: '#app', el: '.app', data: { message: 'Hello Vue!' } })
五、data数据对象
data里的数据可以是字符串、对象、数据。
获取具体值的方式和小程序一样。
下面是data数据对象案例:
{{ list[0] }}
{{ school }}
{{ school.mobile }}
{{ school.mobile }}
var app = new Vue({ //el: '#app', el: '.app', data: { message: 'Hello Vue!', list:['a','b','c'], school:{ "name":"大地幼儿园", "mobile":"123456" } } })
六、vue常用指令
1、v-text
v-text的作用是设置标签的内容
默认的写法会替换全部内容
如果要部分替换,使用{{}}
快乐
快乐
快乐
快乐
{{ message }}快乐
{{ message }}快乐
var app = new Vue({ //el: '#app', el: '#app', data: { message: "你好中国!!!", info: "前端" } })
页面展示:
2、v-html
v-html的作用是设置语速的innerHTML
内容中有html结构会被解析成为标签
v-text指令无论什么内容,只会被解析为文本
var app = new Vue({ //el: '#app', el: '#app', data: { // content:"你好" content:"你好" } })
页面展示:
3、v-on为元素绑定事件
v-on的作用:为元素绑定事件
事件名不需要写on
指令可以简写成@
绑定的方法定义在methods属性中
方法内部通过this关键字可以访问定义在data中的数据
{{food}}
{{food}}
var app = new Vue({ el: '#app', data:{ food:"番茄" }, methods:{ doIt:function(){ alert("hello") }, changefood:function(){ // console.log(this.food) this.food += "炒蛋" } } })
页面展示:
4、v-show
v-show的作用:根据表达式的真假切换元素的显示状态
指令后面的内容,最终都会解析为布尔值
值为true元素显示,值为false元素隐藏
数据改变之后,对应元素的显示状态会同步更新
切换
var app = new Vue({ el: '#app', data: { isShow: false, age:19 }, methods:{ change:function(){ this.isShow = !this.isShow; } } })
页面展示:
5、v-if
v-if作用是根据表达式的真假切换元素的显示状态
本质是通过操纵dom元素来切换显示状态
频繁切换用v-show,反之用v-if,因为前者的切换消耗小
切换
路飞
热死啦
热死啦
var app = new Vue({ el: '#app', data: { isShow: false, temp: 20 }, methods:{ change:function(){ this.isShow = !this.isShow; } } })
页面展示:
6、v-bind
v-bind的作用是为元素绑定属性
完整写法是v-bind:属性名
简写的话可以省略v-bind,直接写:属性名
需要动态的增删class建议使用对象的方式
Vue基础 .active{ border: 1px solid red; }
var app = new Vue({ el: '#app', data: { imgSrc: "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=1132362758,4197603989&fm=26&gp=0.jpg", imgTitle: "Test", isActive:false }, methods:{ changeActive:function(){ this.isActive = !this.isActive; } } })
7、v-for
v-for的作用是根据数据生成列表结构
数组经常和v-for结合使用
语法是(item,index) in 数据
item和index可以结合其他指令一起使用
数组长度的更新会同步到页面上,是响应式的
{{ index+1 }}、城市:{{ item }}
{{ ind }} {{ it.name }}
var app = new Vue({ el: '#app', data: { arr:['北京','上海','广州','深圳'], vagetables:[{name:'番茄'},{name:'鸡蛋'}] }, methods:{ add:function(){ this.vagetables.push({name:'添加'}) }, remove:function(){ this.vagetables.shift(); } } })
8、v-on补充
事件绑定的方法写成函数调用的形式,可以传入自定义参数
定义方法时需要定义形参来接收传入的实参
时间的后面跟上 .修饰符 可以对事件进行限制
.enter 可以限制触发的按键为回车
事件修饰符有多钟
var app = new Vue({ el: '#app', methods:{ doIt:function(p1,p2){ console.log(p1); console.log(p2) }, sayHi:function(){ alert("吃了没") } } })
9、v-model 获取和设置表单元素的值(双向数据绑定)
v-model的作用是便捷的设置和获取表单元素的值
绑定的数据会和表单元素值相关联
绑定的元素表单元素的值
{{ message }}
{{ message }}
var app = new Vue({ el: '#app', data: { message:"王路飞" }, methods:{ getM:function(){ alert(this.message) }, setM:function(){ this.message = "李索隆" } } })
七、小案例
1、案例——计数器
功能:有左右两个按钮,点击调整数字大小,超过数字最大最小值报错
案例代码:
-
{{ num }}
+
var app = new Vue({ el: '#app', data:{ num:1 }, methods:{ sub:function(){ if(this.num>0){ this.num -- }else{ alert("0是最小值") } }, add:function(){ if(this.num<10){ this.num ++ }else{ alert("10是最大值") } } } })body>
案例展示:
2、案例——记事本
功能:输入框记录后点回车保存记录,点击删除按钮删除记录,点击清空按钮清空记录。
案例代码:
<body> <section id="todoapp"> <header class="header"> <h1>记事本h1> <input type="text" autofocus="autofocus" autocomplete="off" placeholder="请输入任务" v-model="inputValue" @keyup.enter="add"> header> <section class="main"> <ul> <li v-for="(item,index) in list"> <span> {{ index+1 }} span> <label>{{ item }}label> <button @click="del(index)">删除button> li> ul> section> <footer class="footer"> <span v-if="list.length!=0"> <strong> {{ list.length}} strong> items leftspan> <br> <button @click="clear" v-if="list.length!=0"> 清空button> footer> section> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js">script> <script> var app = new Vue({ el:"#todoapp", data:{ list:[], inputValue:"" }, methods:{ add:function(){ this.list.push(this.inputValue); this.inputValue="" }, del:function(index){ //从第index位删除0个,新增一个hello // this.list.splice(index,0,'hello') //从第index位开始删除1个,添加0个 this.list.splice(index,1); }, clear:function(){ this.list=[]; } } })script>body>
案例展示:
以上教程都是基于vue2.0版本来编写。
上周作者发布了vue3.0版本——One Piece,官网地址:
https://github.com/vuejs/vue-next/releases/tag/v3.0.0
在大航海时代,你更愿意当路飞还是克比呢?
vue 回车查询 按钮_从零开始学习vue相关推荐
- vue 回车查询 按钮_前后端分离商城,前端基于Vue后端nodejs包含小程序源码免费分享...
先转发,然后加关注,私信"购物"即可获取源码下载链接 项目简介 本项目前后端分离,前端基于Vue+Vue-router+Vuex+Element-ui+Axios,参考小米商城实现 ...
- jenkins vue 打包特别慢_从零开始 使用VUE开发桌面客户端
Electron 是一个非常强大的工具,它可以用来构建跨平台的桌面应用,编写一次到处运行. 知乎视频www.zhihu.com 0. 准备工作 安装好nodejs 在终端中输入 node -v 看到 ...
- vue 回车查询 按钮_vue之在页面中监听键盘的Enter键来触发某个按钮事件
项目中得需求:给页面某个按钮绑定Enter键,但是按钮不在form中,直接给按钮绑定后此按钮只有获取了焦点按键才会触发,显然,一直保持按钮获取焦点是不现实得.所以通过查询等,结合项目需求,完成了下面得 ...
- vue 所有按钮属性、vue Button 所有按钮属性事件、vue a-button 所有按钮属性事件、vue 按钮所有属性事件、vue
vue 所有按钮属性.vue Button 所有按钮属性事件.vue a-button 所有按钮属性事件.vue 按钮所有属性事件.vue 1.组件注册 1.按钮类型 2.按钮组合 3.不可用状态 4 ...
- vue + element ui 的后台管理系统框架_从零开始搭建 VUE + Element UI后台管理系统框架...
点击右上方红色按钮关注"web秀",让你真正秀起来 前言 后台管理系统前端框架,现在很流行的形式都是,上方和左侧都是导航菜单,中间是具体的内容.比如阿里云.七牛云.头条号.百家号等 ...
- sql 多表多行模糊查询_从零开始学习SQL(五)多表查询
经过之前的学习,现在我们已经对查询有了一定的了解,但是我们目前的所有查询都只能找到在一张表中的数据,但如果我们需要寻找分布在多张表格中的数据时,这种之前的查询就做不到了,这时就需要引入一种新的查询方法 ...
- vue中集合取第一个_快速学习Vue框架(知识点集合)
学习Vue的小伙伴速度看过来,快速学习Vue框架知识点集合贴来啦.建议收藏,尤其基础并不是很扎实的同学,本篇集合贴就是你日后工作的参考手册. 基础知识: ·vue的生命周期:beforeCreate/ ...
- vue族谱架构_从零开始做Vue前端架构(1)
前言 想想也已经做过不少架构的项目了,有基于vue,基于react,基于thinkPHP,基于laravel的. 做多了,也就对现有的架构有各种想法,有好的,有坏的,总之,用起来还是不爽.vue-cl ...
- vue created 调用方法_深入解析 Vue 的热更新原理,偷学尤大的秘籍?
大家都用过 Vue-CLI 创建 vue 应用,在开发的时候我们修改了 vue 文件,保存了文件,浏览器上就自动更新出我们写的组件内容,非常的顺滑流畅,大大提高了开发效率.想知道这背后是怎么实现的吗, ...
最新文章
- 太火了!MyBatis Plus 为啥这么牛?
- Qt for Python之 PySide2+QML 入门示例
- ITK:提取矢量图像的分量/通道
- 2020-2021家居行业年度盘点与趋势洞察
- JavaScript单线程和浏览器事件循环简述
- 浏览器设置主页 注册表_关于浏览器首页被篡改这件事
- 简谈【自动化协议逆向工程技术的当前趋势】
- 微信公众号H5之微信分享常见错误和问题(the permission value is offline verifying)
- 如何让excel表格排头一直都在_如何快速整理Excel表格?学会这一招整理表格无压力...
- 四轴mpu6050姿态角卡尔曼滤波代码分析
- Mothur5进阶_Mothur扩增子基因序列分析_基于OTU或ASV的多样性指数分析
- 复音合成器插件-Arturia Pigments 3.0.0 WiN-MAC
- Deli条码打印机如何批量打印二维码
- 24点游戏java代码 中国开源社区_编程实现一个有GUI的24点游戏
- PHP登入网站抓取并且抓取数据
- Linux awk 命令详解
- ffmpeg h264解码器分析sps(二)
- 用OpenGL画五角星
- 2022年熔化焊接与热切割培训试题模拟考试平台操作
- 我说怎么flickr上不去了呢?
热门文章
- Anychat的绝对路径与相对路径
- php7.3安装yaf扩展
- 一个关于php使用pdo方式进行数据库连接和处理的类
- Mysql升序排序对为空的排在最后面is null
- Go创建赋值channel
- oracle10g自带的公共同义词,10g ALL_SYNONYMS同义词查询性能下降
- android7.0wine乱码,Wine1.7+QQ6.4+处理中文乱码
- 5渲染判断if_React 16 渲染流程
- php教学小结,php小结
- 华为8lite支持云闪付吗_鸿蒙系统适配机型表曝光,部分华为旗舰机未支持,你是其中之一吗...