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的 ...
随机推荐
- JVM有意思的图-持续更新
放一些JVM有意思的图 通过一行代码联想JVM:
- 高阶函数_函数柯里化 以及 setState中动态key
使用柯里化: 1 state = { 2 username: "", 3 password: "", 4 }; 5 render() { 6 return ( ...
- 【机器学习与深度学习理论要点】07.A/B测试的概念及用法
1)什么是A/B测试? A/B测试就是两种模型同时运行,并在实际环境中验证其效果的方式.在互联网公司中,A/B测试是验证新模块.新功能.新产品是否有效,新算法.新模型的效果是否有提升,新设计是否收到用 ...
- 基于create-react-app构建静态博客
前言: 用过hexo后,我被其强大的功能惊艳到了,于是便想自己也写一个静态博客生成器,并且可以发布到GitHub托管. 首先我们来看下效果图: 具体是怎么实现的呢? 我们通过create-react- ...
- [AGC001E] BBQ Hard题解
Problem [AGC001E] BBQ Hard 计算: \[\sum_{i=1}^{n}\sum_{j=i+1}^n\binom{a_i+b_i+a_j+b_j}{a_i+a_j} \] 其中\ ...
- vue全家桶进阶之路26:Vue.js 3.0与Vue.js 2.x 的比较和注意事项
Vue.js 3.0 是 Vue.js 框架的最新版本,于 2020 年 9 月正式发布.Vue.js 3.0 主要的改进和新特性包括: 更好的性能:Vue.js 3.0 使用了更快的虚拟 DOM 实 ...
- python通过变量名称的反射,获取变量的引用
有一些极端情况下,例如变量名称是动态的,我们无法直接调用变量名,如何获取到变量的引用呢? aa = [globals()["xxxx"]]
- IntelliJ IDEA一站式配置【全】(提高开发效率)
IDEA常用设置(提高开发效率) 本人也是IDEA编译器的忠实用户了,但是有时出于各种原因,比如更换设备等等,IDEA总是需要重新安装配置.这就让我比较苦恼,因为总是记不全自己之前都修改了哪些地方(原 ...
- < Python全景系列-6 > 掌握Python面向对象编程的关键:深度探索类与对象
欢迎来到我们的系列博客<Python全景系列>!在这个系列中,我们将带领你从Python的基础知识开始,一步步深入到高级话题,帮助你掌握这门强大而灵活的编程语法.无论你是编程新手,还是有一 ...
- ES6迭代器(Iterator)和生成器(Generator)
平时我们迭代数据用得最多的应该就是for循环了 来看个简单的例子 var colors = ["red", "green", "blue"] ...