2021-7-6 VUE笔记
v-cloak:使用的display:none;
直到编译完成后开始显示;
v-text和插值表达式,非必要响应式用v-text会比较好,使用插值表达式要加上v-cloak;
v-html:不推荐使用,动态渲染网页容易导致xss攻击;
本网站内部使用,不应该在来自使用外部数据或者跨域使用;
v-pre:不进行编译,即类似于插值表达式不执行,返回初始状态{{message}}
v-once:只赋值一次,只渲染一次
Vue的v-model使用的是MVVM模式:view和model通过viewmodel进行交互,view通过Data Bindings绑定model
model通过Dom Listeners监听view的值
v-on:事件绑定,可用@表示;
传参时用$event可获取当前使用的控件参数,$event必须放在最后面,相当于选择器例如(event.target.TagName)或(event.target.innerHTML);
不传参时默认调用$event做为第一个参数;
事件修饰符:.stop:阻止冒泡(传统阻止冒泡event.stopPropagetion()):冒泡是指由小到大触发标签或者方法
.prevent:阻止默认行为:指标签默认会产生的行为
按键事件修饰符示例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
<div id="app">
<input type="text" v-model="name" @keyup.delete="del">
<input type="text" v-model="pwd" @keyup.enter="handle" @keyup.delete="del">
<input type="button" value="提交" @click="handle">
</div>
<script>
new Vue({
el: '#app',
data: {
name:'',
pwd:''
},
methods:{
handle:function(){
console.log(this.name,this.pwd);
},
del:function(){
this.name='';
this.pwd='';
}
}
})
</script>
</body>
</html>
获取按键修饰符的编号,以使用keycode

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
<div id="app">
<input type="text" @keyup="handle($event)">
</div> <script>
new Vue({
el: '#app',
data: {
code:0
},
methods:{
handle:function(event){
console.log(event.keyCode);
}
}
})
</script>
</body>
</html>
Vue.config.keyCodes.a=65;
上方代码可直接通过keyup.a调用对应的按键
*parseInt可强转string类型为int
v-bind:可以用:代替
实例:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
<div id="app">
<input type="button" @click="handle()" value="改变">
<a v-bind:href="url">{{name}}</a>
</div> <script>
Vue.config.keyCodes.a=65;
new Vue({
el: '#app',
data: {
name:'必应',
url:'https://cn.bing.com/?mkt=zh-CN'
},
methods:{
handle:function(){
this.name="百度";
this.url="https:\\www.baidu.com";
}
}
})
</script>
</body>
</html>
v-model:实现原理

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
<div id="app">
<input type="text" :value="name" @input="handle">
<input type="text" :value="name" @input="handle">
</div> <script>
Vue.config.keyCodes.a=65;
new Vue({
el: '#app',
data: {
name:'陌生人,你好鸭'
},
methods:{
handle:function(event){
this.name=event.target.value;
}
}
})
</script>
</body>
</html>
2021-7-6 VUE笔记的更多相关文章
- Vue笔记目录
Vue笔记目录 一.Vue.js介绍 二.vue基础-vue-cli(vue脚手架) ...持续更新中,敬请期待
- 《Vue笔记01: 我与唐金州二三事》
最近我在收看唐金州在极客时间发布的<vue从入门到精通>,颇有收获. 唐金州,一点资讯前端技术专家,曾在蚂蚁金服就职,也是开源组件库ant design vue的作者,虽然唐老师写的ant ...
- Vue笔记--通过自定义指令实现按钮操作权限
经常做中后台系统,此类系统的权限是比较重要,拿自己做过的一些项目做个笔记. Vue实现的中后台管理系统.按钮操作权限的空置一般都是通过自定义指令Vue.directive. <el-button ...
- Vue笔记(有点乱)
Vue学习笔记(2019.7.31) 目录 Vue学习笔记(2019.7.31) vue 基本指令用法 v-cloak v-text v-html v-bind v-on 跑马灯 v-on v-mod ...
- 一个后端开发的 Vue 笔记【入门级】
一 前言 最近找了些教程,顺带着趴在官网上,看了看 Vue 的一些内容,入门的一些概念,以及基础语法,还有一些常用的操作,瞄了一眼,通篇文字+贴了部分代码 9000 多字,入门语法什么的还是很好理解的 ...
- vue笔记
安装vue脚手架工具 sudo cnpm install -g vue-cli
- vue笔记 递归组件的使用
递归组件 什么是递归组件? 组件自身去调用组件自身. 代码示例 DetailList.vue(子组件-递归组件) <template> <div> <div class= ...
- vue笔记-列表渲染
用v-for把一个数组对应为一组元素 使用方法:v-for="(item,index) in items"//也可以使用of替代in { items:源数组 item:数组元素迭代 ...
- vue笔记-条件渲染
条件渲染 1:指令v-if单独使用和结合v-else //单独使用 <h1 v-if="ok">Yes</h1> //组合使用 <h1 v-if=&q ...
- 【Vue笔记】-- 详解vue生命周期
针对于Vue的生命周期进行详细的说明,方面加深对各个方法的引用. 引言: 前几天重新回顾vue官网时,看到vue的生命周期,想着自己用vue开发了快一年了,就总结总结vue知识,再次加深自己对vue的 ...
随机推荐
- shell执行一个程序过程
1:shell调用执行程序或脚本 2:unix内核启动一个新的进程,在该进程中执行所指定的程序. 3:如果是编译型程序,内核成执行,如果无法执行指定的程序,返回"not executable ...
- shiro拦截axios请求导致@RequireRole注解失效
文章目录 ShiroRequiresRole注解对于axios请求无效 场景再现 解决方案 网上的解决方案 最近在整理一个自己以前做过的系统,想要添加一些功能,发现shiro框架出现了点问题,觉得这个 ...
- Swift WisdomProtocol 面向协议编程(下)
WisdomProtocol 面向协议编程(下) @[TOC] WisdomProtocol SDK 面向协议编程 # Welcome to use WisdomProtocol WisdomProt ...
- Pwn系列之Protostar靶场 Stack0题解
前提学习 GDB反调试相关 设置反汇编代码格式为intel格式 set disassembly-flavor intel 反汇编函数 disas/disass/disassemble 函数名/起始地址 ...
- 2022-03-10:限制:0 <= start <= end,0 <= target <= 64。 [start,end]范围上的数字,有多少数字二进制中1的个数等于target。 真实面试题,被问
2022-03-10:限制:0 <= start <= end,0 <= target <= 64. [start,end]范围上的数字,有多少数字二进制中1的个数等于targ ...
- Django4全栈进阶之路10 url路由设置
在 Django 4 中,可以在主路由文件中设置和管理子路由.通常,我们会为每个应用程序创建一个子路由文件,以便更好地组织代码和管理路由. 以下是 Django 4 中设置主路由和子路由的示例: 首先 ...
- DevEco Studio 3.1 Release | 动态共享包开发,编译更快,包更小
原文:https://mp.weixin.qq.com/s/qPvHZNZuLccAsviBcXtPWw,点击链接查看更多技术内容. 动态共享包(HSP)开发是DevEco Studio 3.1 ...
- Windows系统中,如何快速找到端口被占用的进程?
在本地调试代码时,经常遇到端口被占用导致启动失败的问题,又不能很快找到哪个进程占用了端口,很是恼火. 今天,我们用shell命令轻松搞定. 一.打开命令提示符 window+R 组合键,调出命令窗口. ...
- nodejs使用eggjs创建项目,接入influxdb完成单表增删改查
转载请注明出处: 1.Eggjs 特性: Eggjs 是 Node.js 服务端应用开发框架,它提供了一套约定,使开发者能够快速搭建.开发和部署应用.以下是 Egg.js 的一些特性和作用: 框架内置 ...
- 【建议收藏】Log4j配置详解
大家在日常开发中必然会使用到日志组件,Log4j是Java方向上比较常用的日志组件,今天给大家分享下Log4j支持的配置项,强烈建议收藏,以便配置时查看 #展示log4j各种配置,私有部分见文件中注释 ...