vue.js基础知识总结
初始化一个项目
npm init -y
安装一些依赖
npm install 名称 --save
例如 npm install vue axios bootstrap --save
--save 表示开发和上线都要用
--save dev 表示开始时候用,上线丢掉
vue总结
1.指令
v-show 切换显示隐藏,频繁显示使用
v-if 根据条件语句可以显示隐藏,不频繁显示隐藏使用
v-else 前面有v-if 配合使用,如果前面v-if不成立情况下
v-model 双向数据绑定的关键所在,视图变化
v-cloak 防止闪烁css中定义一下[v-cloak]{display:none}
v-once 控制绑定的内容不会再次被监测变化通常是配合v-model使用
v-html 解析数据里面的标签,插入到绑定节点里面去
v-text 绑定数据 ,和{{}}等价,但可以防闪烁
v-for 循环 语法- 不带索引写法 item in arr 语法二 带索引写法 (item,index) in arr v-for可以嵌套
v-on 用于监听dom事件 ,简写@
v-bind 用于绑定属性 ,简写:
v-style 写内嵌样式,基本没有什么作用
阻止冒泡
e.cancelBubble=true;
e.stopPropagation();
@click.stop
修饰符
时间后面可以加一些修饰符号
@click.stop 阻止冒泡
@click.capture 时间捕获,先捕获到目标再冒泡
@click.self 只有在自己身上点击才会触发函数,其他冒泡,会跳过这个函数
@click.prevent 阻止默认事件,例如a标签点击跳转,加上这个@click.prevent,就阻止了默认属性href跳转了
ref="wo" 给节点绑定一个标识
后期调用绑定的标识
this.$refs.wo
创建实例之后,再添加一个数据上去
Vue.set(data,'sex', '男')
2 实例化一个Vue生命周期
实例化一个Vue函数 new Vue({})
周期里面的属性
el -绑定vue用的范围,id和class都可以
语法1: 内部:el:"#app"或el:".app
语法2:外部:vm.$ount(''#app')
语法2:其实没有必要外部挂载范围
data:{ }
绑定vue全局的数据,是一个对象
语法 : data:{ }
created(){}
实例已经创建完成之后被调用的函数
通常用数据请求
methods:{}
,实例上去之后,获取真实的dom元素,调用这个对象
基本所有的方法,函数都丢在这个函数里面
directives:{}
自定义指令方法,里面写指令函数,名称可以不带v-;但是外部必须带v-
指令函数里面有两个参数,第一个(ele)是当前元素,第二个(bind)是当前元素的对象
语法 directives:{auto(ele,bind){
} }
filters:{}
过滤器,过滤管道(|)左边值的操作
过滤器里面过滤方法auto
第一个参数是左边要过滤的值,
第二个参数是过滤方法里面传的参数
语法
filters:{
auto(e,prem){
}}
computed:{}
计算属性
计算属性里面不支持异步编程,比如计时器呀,ajax等
默认get()函数,意思就是根据别人数据,得到自己计算的数据
set()函数,意思是根据自己,影响别人数据,很少用
watch:{}
监控属性,返回回调函数
监控的数据,必须和data里面定义是一样的
默认是handler(){} 方法
deep:true 是深度监控,值发生变化,也能监控
beforeDestroy(){}
销毁实例的Vue
不常用的vue里面的属性
beforeCreate(){}
数据没有被挂载,方法也没有被挂载的时候
基本不用
beforeMount(){}
判断有没有el属性,这时候,有模板template,就用模板,没有就用#app节点内部渲染
基本不用
beforeUpdate(){}
当页面数据发送变化时候,执行,前提是页面用到了这个数据
基本不用 computed{} 计算属性基本全部搞定
destroyed(){}
销毁vue实例,
基本不用
localStorage缓存
localStorage.setItem('缓存的名字','缓存的值');
localStorage.getItem('缓存的名字')
我们平常缓存时候,将对象想变成字符串缓存JSON.stringify()
JSON.stringify()
将一个对象变为字符串
然后取出缓存数据再将字符串转为json对象JSON.parse()
JSON.parse
将一个字符串变为json对象
异步编程之一 Promise
解决回调地狱
同步请求,依次等待
Promise 有三种状态,成功,失败,等待
Promise 有两个参数,其实是两个函数类型
第一个参数 resolve ,代表成功
第二个参数 reject 代表失败
Promise 自带then方法,
then 方法有两个函数
第一个函数成功
第二个函数失败
数组常见操作
reverse()倒序数组
[1,2,3,4].reverse()
[4,3,2,1]
join()
接收一个参数,即用作分隔符的字符串,然后返回包含所有数组项的字符串
["red","green","blue"].join("|")
red|green|blue
pop()
从数组末尾移除最后一项,减少数组的length值,然后返回移除的项
[1,2,3].pop()
[1,2]
concat()
合并数组
[1,2].concat([3,4])
[1,2,3,4]
map 映射
结果生产一个新数组,不影响原来的数组
console.log(arr=[1,1,3].map(function(item){
return item+1;
}))结果[2,2,4],不影响上一个数组
forEach 循环
循环数组
filter 过滤
根据条件过滤一个数组,返回过滤后的数组
console.log([1,2,3].filter(function(item){
if(item>1){
return item
}
}))
结果就是[2,3],之前的[1,2,3]就不在了
find 查找
用于找出第一个符合条件的数组元素,有就返回该元素,没有就undefined
console.log([1,2,3].find(function(item){
if(item==1){
return item;
}
}))结果找到 1
includes 方法
判断当前数组是否包含某个指定的元素,如果有true,没有false
console.log([1,2,3].includes(1))
结果true 当中包含1
some 方法
判断当前数组有没有符合条件的,有就返回ture,没有就false
console.log([1,2,3,6].some(function(item){
if(item>1){
return item
}
}))
结果为true 当前有元素大于1
every 方法
判断当前数组里面是不是每一个元素符合条件,都符合返回true,有一个不符合返回false
console.log([1,2,3].every(function(item){
if(item>1){
return item
}
}))结果为false ,当前有元素1不大于1
reduce 方法
累加结果,其实循环累加,=+
有4个参数
第一个参数 是当前元素上一次累加的值
第二个参数 是当前元素
第三个参数 是当前索引值
第四个参数 是数组本身
为了每次累加没有出现undefined,默认添加一个第一项为0
console.log([1,2,3].reduce(prev,next,index,arr){
return prev+next;
})
过程,第一次选项值为0,加上第一项的值为1
0+1 //1
第二次,前一个累加的值为1,加上第二项的值为2
1+2 //3
第三次 前面累加的值为3 ,加上第三项的值为3
3+3-全部长度就是3个元素,结束,此时return 最后的结果为6
-所以结果为6
vue.js基础知识总结的更多相关文章
- vue.js基础知识篇(7):表单校验详解
目录 网盘 第12章:表单校验 1.npm安装vue-validator $ npm install vue-validator 代码示例: var Vue=require("vue&quo ...
- vue.js基础知识篇(6):组件详解
第11章:组件详解 组件是Vue.js最推崇也最强大的功能之一,核心目标是可重用性. 我们把组件代码按照template.style.script的拆分方式,放置到对应的.vue文件中. 1.注册 V ...
- vue.js基础知识篇(5):过渡、Method和Vue实例方法
第8章:过渡 1.CSS过渡 2.JavaScript过渡 3.渐进过渡 第9章:method Vue.js的事件一般通过v-on指令配置在HTML中,虽然也可以在js的代码中使用原生的addEven ...
- vue.js基础知识篇(4):过滤器、class与style的绑定2
代码下载:网盘 欢迎私信 第一章:过滤器 过滤器是对数据进行处理并返回结果的函数. 1.语法 语法是使用管道符"|"进行连接.过滤器可以接收参数,跟在过滤器后面,带引号的参数被当做 ...
- vue.js基础知识篇(3):计算属性、表单控件绑定
第四章:计算属性 为了避免过多的逻辑造成模板的臃肿不堪,可使用计算属性来简化逻辑. 1.什么是计算属性 <!DOCTYPE html><html lang="en" ...
- vue.js基础知识篇(2):指令详解
第三章:指令 1.语法 指令以v-打头,它的值限定为绑定表达式,它负责的是按照表达式的值应用某些行为到DOM上. 内部指令有v-show,v-else,v-model,v-repeat,v-for,v ...
- vue.js基础知识篇(1):简介、数据绑定
目录第一章:vue.js是什么? 第二章:数据绑定第三章:指令第四章:计算属性第五章:表单控件绑定代码链接: http://pan.baidu.com/s/1qXCfzRI 密码: 5j79 第一章: ...
- 简单易懂的 Vue.js 基础知识 !
根 vue 实例 let viewModel = new Vue({ // 包含数据.模板.挂载元素.方法.生命周期钩子等选项 }) Hello Wrold <!-- 这是我们的 View - ...
- Vue.js 基础知识
0. Vue.js 是轻量级的MVVM框架: 1. index.html:<app></app>:组件载入:入口文件会默认调用一个 main.js: 2. App.vue:入口 ...
- Vue.js基础知识
<!DOCTYPE html> <html lang="en" xmlns:v-bind="http://www.w3.org/1999/xhtml&q ...
随机推荐
- js调用本地程序
前几天,做项目时候用到js调用本地的程序,找了好多资料,一种是写入注册表,一种是写一个浏览器插件,相对来说,写一个注册表更简单一点,因为需求很紧.下面就是我的总结,希望可以对你们有所帮助,具体从哪里找 ...
- re正则表达式公式讲解1
常用的表达式一些规则 1.“.” 匹配出了\n之外的任意一个字符,包括特殊字符 有几个·就匹配几个字符. import re print(re.search("."," ...
- 洛谷P3773 [CTSC2017]吉夫特(Lucas定理,dp)
题意 满足$b_1 < b_2 < \dots < b_k$且$a_{b_1} \geqslant a_{b_2} \geqslant \dots \geqslant a_{b_k} ...
- BZOJ1132: [POI2008]Tro(叉积 排序)
题意 世上最良心题目描述qwq 平面上有N个点. 求出所有以这N个点为顶点的三角形的面积和 N<=3000 Sol 直接模拟是$n^3$的. 考虑先枚举一个$i$,那么我们要算的就是$\sum_ ...
- vmware桥接模式下主机有多个网卡导致虚拟机网络不通
桥接模式下,vmware会绑定一个物理网卡,因此有多个物理网卡时就要注意当前绑定的物理网卡.打开如下vmware菜单 可以看到VMnet0是桥接模式用的,然后他可以选择绑定一个物理网卡,注意要正确选择 ...
- el-select,选择一行,取值行的对象.
<el-select v-model="set_invoice_form.InvoiceType" placeholder="请选择" :disabl ...
- MyBatis学习(四)
前言 最近比较松懈,下班回家后也懒得学习了.今晚实在是看不下去了,争取时间学习.社会上有这么多的资源,就看谁能抢的多吧.今天就说说MyBatis的动态SQL吧 正文 动态 SQL 通常要做的事情是有条 ...
- c# 移除数组为空元素
通过字符串分割取得的数组中,有的时候可能需要处理除掉数组元素值为空的情况,所以可以按照如下代码完成: string rs="";//需要分割的字符串 char[] chspilt= ...
- javascript动态添加、修改、删除对象的属性与方法
在其他语言中,对象一旦生成,就不可更改了,要为一个对象添加修改成员必须要在对应的类中修改,并重新实例化,而且程序必须经过重新编译.JavaScript 中却非如此,它提供了灵活的机制来修改对象的行为, ...
- 【C++】cerr,cout,clog
http://stackoverflow.com/questions/16772842/what-is-the-difference-between-cout-cerr-clog-of-iostrea ...