当前位置: 首页 > news >正文

激光网站建设数字货币交易网站开发

激光网站建设,数字货币交易网站开发,电商论坛,wordpress自适应移动端目录 事件绑定 事件参数 事件修饰符 表单 watch(监听器 监听属性) computed#xff08;计算属性#xff09; 面试题 事件机制 概述 在dom阶段#xff0c;我们已经讲述了事件机制的特点#xff1a; 事件三要素 事件绑定 事件流 事件对象 事件代理 事件类型 这些…目录 事件绑定 事件参数 事件修饰符 表单 watch(监听器 监听属性) computed计算属性 面试题 事件机制 概述 在dom阶段我们已经讲述了事件机制的特点 事件三要素 事件绑定 事件流 事件对象 事件代理 事件类型 这些概念在vue中依旧存在但是vue中的事件机制要更加的简单便捷一 事件绑定 可以用 v-on 指令监听DOM 事件并在触发时运行一些 JavaScript 代码。v-on 还可以接收一个需要调用的方法名称。 button v-on:clickhandlergood/button methods: { handler: function (event) { if (event) { alert(event.target.tagName) } // event 是原生 DOM 事件 } } 除了直接绑定到一个方法也可以在内联 JavaScript 语句中调用方法通过$event传递原生事件对象 button v-on:clicksay(hi,$event)Say hi/button methods: { say: function (message,event) { alert(message) } } 由于事件绑定在vue中使用概率较大所以这里提供了简写形式 button clicksay(hi,$event)Say hi/button 事件参数 在事件调用时可以进行参数的传递 :   div idappel-button clicktoAdd typeprimary sizesmall新增/el-buttondivel-table typeindex sizesmall :datatableData stylewidth: 50%el-table-column  propdate label日期 width180/el-table-columnel-table-column propname label姓名 width180/el-table-columnel-table-column propaddress label地址/el-table-columnel-table-column label操作template slot-scopescopeel-button sizesmall clicktoEdit(scope.row) typeprimary编辑/el-buttonel-button sizesmall typedanger clicktoDelete(scope.row.id)删除/el-button/template/el-table-column/el-table/divel-dialog :titletitle :visible.syncdialogFormVisibleel-form :modelformel-form-item  label时间 :label-widthformLabelWidthel-input v-modelform.date autocompleteoff/el-input/el-form-itemel-form-item label姓名 :label-widthformLabelWidthel-input v-modelform.name autocompleteoff/el-input/el-form-itemel-form-item label地址 :label-widthformLabelWidthel-input v-modelform.address autocompleteoff/el-input/el-form-item/el-formdiv slotfooter classdialog-footerel-button clickdialogFormVisible false取 消/el-buttonel-button typeprimary clickdialogFormVisible false确 定/el-button/div/el-dialog/divscriptnew Vue({el: #app,data: {dialogFormVisible: false,formLabelWidth: 120px,form: {},title: ,tableData: [{id: 1,date: 2016-05-02,name: 王小虎,address: 上海市普陀区金沙江路 1518 弄}, {id: 2,date: 2016-05-04,name: 王小虎,address: 上海市普陀区金沙江路 1517 弄}, {id: 3,date: 2016-05-01,name: 王小虎,address: 上海市普陀区金沙江路 1519 弄}, {id: 4,date: 2016-05-03,name: 王小虎,address: 上海市普陀区金沙江路 1516 弄}]},methods: {toAdd() {this.dialogFormVisible true;this.form {};this.title 新增数据},toEdit(row) {this.form { ...row };this.dialogFormVisible true;this.title 修改数据;},toDelete(id) {this.$confirm(此操作将永久删除该文件, 是否继续?, 提示, {confirmButtonText: 确定,cancelButtonText: 取消,type: warning}).then(() {this.tableData.splice(id,1)this.$message({type: success,message: 删除成功!});}).catch(() {this.$message({type: info,message: 已取消删除});});}}})/script 进行事件绑定时可以将v-on:事件名缩写为事件名此方式经常使用 : 事件修饰符 事件修饰符 在事件处理程序中调用 event.preventDefault() 或 event.stopPropagation() 是非常常见的需求。Vue提供了更好的方式事件处理函数只有纯粹的数据逻辑而不是去处理 DOM 事件细节通过事件修饰符来完成这些细节。 button v-on:click.preventhandler点我点我/button 常见修饰符如下 .stop 停止事件冒泡 .prevent 阻止事件默认行为 .capture 在事件捕获阶段执行事件处理函数 .self 只当在 event.target 是当前元素自身时触发处理函数 .once 事件处理函数执行一次后解绑 .passive 滚动事件的默认行为 (即滚动行为) 将会立即触发 一般与scroll连用能够提升移动端的性能 按键修饰符 一般与keyup事件类型配合使用 .enter、.tab、.delete、.esc、.space、.up、.down、.left、.right .ctrl、.alt、.shift、.meta 鼠标修饰符mouseup事件 .left、.right、.middle new Vue({el: #app,data: {msg: 事件修饰符},methods: {keyupHandle() {console.log(按下某些特殊键);},toJump() {console.log(跳转);alert(1);},outer(e) {// e.target是触发事件的源头元素目标元素// e.currentTarget 当前执行事件处理程序的元素当前目标元素// console.log(outer, e.target, e.currentTarget);console.log(outer)for (let i 0; i 100; i) {console.log(i);}},inner(e) {// e.stopPropagation();// console.log(inner, e.target, e.currentTarget);console.log(inner);}}}) div idapp!-- input typetext keyup.enterkeyupHandle --input typetext keyup.13keyupHandle!-- input typetext mouseup.leftkeyupHandle --{{msg}}a click.preventtoJump hrefhttp://www.baidu.com百度一下/a!-- 点击inner   event.target   --!-- div classouter click.self.onceouter --!-- div classouter click.selfouter --!-- div classouter click.captureouter --div classouter scroll.passiveouterouterdiv classinner clickinner!-- div classinner click.stopinner --inner/div/div/div 表单 可以用 v-model 指令在表单 input、textarea 及 select 元素上创建双向数据绑定。 它会根据控件类型自动选取正确的方法来更新元素。尽管有些神奇但 v-model 本质上不过是语法糖。它负责监听用户的输入事件以更新数据并对一些极端场景进行一些特殊处理。使用v-model绑定了值 那么name属性就可以不用写了。 div idapp{{msg}}br{{stu}}br!-- 用户名input typetext v-model.lazystu.username --用户名input typetext v-model.trimstu.usernamebr!-- .number修饰符可以将采集到的数据转为number类型然后再存储到数据模型中 --年龄input typetext v-model.numberstu.agebr!-- 性别 --性别input typeradio valuemale v-modelstu.gender男input typeradio valuefemale v-modelstu.gender女br!-- 爱好 --爱好input typecheckbox valuebasketball v-modelstu.hobby篮球input typecheckbox valueswimming v-modelstu.hobby游泳input typecheckbox valuedancing v-modelstu.hobby跳舞br!-- 城市 --城市!-- select multiple v-modelstu.city --select v-modelstu.cityoption valueshanghai上海/optionoption valuebeijing北京/optionoption valueguangzhou广州/option/selectbr!-- 简介 --简介textarea v-modelstu.info cols30 rows10/textarea/div ### js代码new Vue({el: #app,data: {msg: hello,stu: {// 复选框hobby: []}},methods: {}}) ​ watch(监听器 监听属性) 当需要在数据变化时执行异步或开销较大的操作时使用监听器是最有用的 虽然计算属性在大多数情况下更合适但有时也需要一个自定义的侦听器。这就是为什么 Vue 通过 watch 选项提供了一个更通用的方法来响应数据的变化。当需要在数据变化时执行异步或开销较大的操作时这个方式是最有用的 。 div idapp{{msg}}brainput typetext v-model.numberabrbrbinput typetext v-model.numberbbrbroutput{{total}}/output/divnew Vue({el: #app,data: {msg: hello,a: 0,b: 0,total: 0},methods: {},// 监听 侦听watch: {a(newValue, oldValue) {this.total this.a this.b;},b(newValue, oldValue) {this.total this.b this.a;}}})//深度监听new Vue({el: #app,data: {msg: hello,a: 1,obj: {name: zhangsan,age: 12},},watch: {a(newValue, oldValue) {console.log(a数据发生变化...);},/* obj(newValue, oldValue) {console.log(obj数据发生变化...);} */// 深度监听obj: {handler(newValue, oldValue) {console.log(obj数据发生变化...);},// 深度监听deep: true}},methods: {changeObj() {// 更改内部数据this.obj.name lisi;}}})div idapp{{msg}}br{{obj}}button clickchangeObj更改obj/button/div computed计算属性 计算属性 有依赖关系的数据 我们希望一个变量是经过某种计算然后输出而不是直接输出的时候可以使用到计算属性 计算属性是基于它们的响应式依赖进行缓存的。只在相关响应式依赖发生改变时它们才会重新求值。而每次调用函数都会导致函数的重新执行。 div idapp{{msg}}brainput typetext v-model.numberabrbrbinput typetext v-model.numberbbrbr{{total}}/div new Vue({el: #app,data: {msg: hello,a: 0,b: 0,// total: 0},// 计算属性computed: {total(){console.log(计算属性);// return 111return this.athis.b}},methods: {}}) 面试题 watch和computed的区别?computed    1. 具有缓存性页面重新渲染值不变化,计算属性会立即返回之前的计算结果而不必再次执行函数     2.计算属性计算某一个属性得变化,如果某一个值改变了计算属性会见监听到进行返回watch    1. 监听值的变化执行异步操作【axios请求】    ’$route.query‘:{        this.loadArticle()    }    2. 无缓存性只有当当前值发生变化时才会执行/响应 ​
http://www.zqtcl.cn/news/8787/

相关文章:

  • 郑州专业seo首选网站建设优化排名
  • app网站开发小程序石家庄教育平台网站建设
  • 网站开发 项目的招标文件设计素材网站推荐ppt
  • 中小企业网站制作费用是多少?音乐类网站开发
  • wordpress 判断置顶长沙网站托管seo优化公司
  • 专题页网站优设网app下载
  • 在合肥哪里学网站建设银川网站建设那家公司比较好
  • 中国网站推广黄页名录网站图片特效代码
  • 投资网站模板宝塔如何添加ip域名做网站
  • 30天网站建设实录视频网站运营
  • 政务网站群建设韩国有哪些做潮牌的网站
  • 做最好最全的命理网站网店美工课本
  • 专做民宿的网站网站备案公司倒闭
  • 2022年没封网站直接进入网络营销技术
  • 比较容易做的网站wordpress 一小时建站
  • 手把手教建设网站wordpress显示浏览数
  • 黄冈网站制作公司外贸网络推广专员
  • 企业网站的网址有哪些网页站点是什么意思
  • 网站建设 验收意见大气网站首页欣赏
  • 成都营销网站建设团队wordpress开启多站点模式
  • 一个空间可以做多少个网站中信建设有限责任公司 闫励
  • 成都网站改版公司wordpress注册码系统
  • 做网站一定需要主机吗wordpress 商城id连续
  • 思帽西宁网站建设网站建设丷金手指专业十五
  • 校庆专题网站建设方案成都专线运输电话
  • 青岛李沧建设局网站怎么查询网站的备案号
  • 建设商城网站制作成都网站开发制作
  • 做电影ppt模板下载网站服务器可以做自己网站用吗
  • 手机网站 滑动翻页营销网站特点
  • 自己做的网站什么时候可以赚钱营销推广的工作内容