vue中的一些用法,持续更新中......
1、跳转用法
@1、在template模板中通常使用router-link to='url'
@2、在js中
1、this.$router.push({path: ''/order/index''});
2、this.$router.push({path: '/order/page1',query:{ id:'2'}});
3、this.$router.push({name: '/order/page2',params:{ id:'6'}});
第一种不传参直接跳转到某一个页面,第二种,第三种传参跳转到某个页面,第二种和第三种不同的是都传了参数过去,第二种参数在url中显示第三种不显示
2、this的用法js中的this指向的该元素,在vue中this指代的是vue这个对象。
3、@1、prop 父组件向子组件传递信息,着重与数据传递,并不能调用子组件的属性和方法
@2、$ref 着重与索引主要用来调用子组件的属性和方法,不擅长数据传输,作用于元素的时候相当于选择器
@3、$emit 子组件向父组件传值,vm.$emit( event, arg ),$emit 绑定一个自定义事件event,当这个这个语句被执行到的时候,就会将参数arg传递给父组件,父组件通过@event监听并接收参数。
@4、vm.$emit(event),父组件调用@event时,父组件调用了该函数
4、v-if和v-show的区别
v-if条件判断,如果为false将不显示在html中也不存在,而v-show如果为false不显示但是在html中存在只不过属性为display:none;
5、vue store 中的commit和dispatch
this.$store.commit(fn,value)同步操作
this.$store.dispatch(fn,value)异步操作
6、filters过滤器,前端用管道进行过滤{{status | statuFilter}},此时如果status为0,则会显示为未付款
filters:{
statuFilter:function(type){
switch(type){
case "0":
return "未付款";
case "1":
return "付款中";
case "2":
return "已付款";
default:
return "";
}
}
}
简单的讲,前端表达式 value | filter(value)
filter这个函数接收到了value值,进行对value的操作,返回的值即是过滤后的值。
7、v-bind: 简写:,html属性不能使用双大括号形式绑定,只能使用v-bind指令
8、v-text与v-html的区别
前者不解析html标签渲染包含的信息,后者解析html标签之后渲染信息。此外这两个指令还有另一个用途“防抖”。
9、事件修饰 .stop, .prevent , .once , .self , .capture
stop:阻止事件冒泡
prevent:阻止默认事件
once:只触发一次
self:只有点击自己时才触发
capture:把冒泡改为倾听,冒泡从内岛外,倾听从外到内
10、compont用法,详解下方链接
https://www.cnblogs.com/samve/p/9424793.html
11、钩子函数,钩子函数的作用例如页面装载后开始读取一些数据进行初始化
beforecreated 组件创建前 1
created组件创建后 2
beforeMount 装载前 3
mounted装载后 4
beforeUpdate 更新前 5
updated 更新后 6
beforeDestroy 销毁前 7 this.$destroy 销毁,销毁实例,实例销毁了不存在上述操作
destroyed 销毁后 8
12、t如何修改itle,修改index.html文件,一般html文件在根目录下或者public目录下
13、v-for 倒序 reverse() 数组顺序颠倒
注释:当data的某个属性是一个数组时,用v-for可以遍历,但显然数组是可能变动的,因此对以下变动也进行数据绑定;
push() 数组末尾添加
pop() 数组末尾取出
shift() 数组开头取出
unshift() 数组开头添加
splice() 删除并插入
sort() 排序
reverse() 数组顺序颠倒
当利用以上方法变更数组时,被渲染的内容会实时更新;
14、原对象中无某个键值想要添加一个新的键值
this.$set(this.obj,"key","value");
this.$delete(this.obj,"key");
15、vue中遍历的写法
this.obj.foreach((el,index)=>{
})
遍历查找某一个值出现的次数同样可以用filter过滤去查找
this.obj.filter(item=>item.state==='0').length //(过滤对象中state===0的个数有多少个)
16、复选框选中之后为true,未选中为false
checkbox 双向绑定一个变量之后可以通过选中来改变这个变量,改变的变量为布尔值
17、Axios (ai'ke'c'l's)
npm install axios
CDN地址
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
axios get的用法,.catch处理错误函数
// 为给定 ID 的 user 创建请求
axios.get('/user?ID=12345')
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
}); // 可选地,上面的请求可以这样做
axios.get('/user', {
params: {
ID: 12345
}
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
axios post请求,axios.post的三种用法 传送门
axios.post('/user', {
firstName: 'Fred',
lastName: 'Flintstone'
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
执行多个请求
function getUserAccount() {
return axios.get('/user/12345');
}
function getUserPermissions() {
return axios.get('/user/12345/permissions');
}
axios.all([getUserAccount(), getUserPermissions()])
.then(axios.spread(function (acct, perms) {
// 两个请求现在都执行完成
}));
18、map函数 遍历一个数组对这个数组进行操作变成一个新的数组,或者对这个数组进行值的判断取出想要的一条或多条
var memo=[{type:'text',content:'abcdefg'},{type:'number',content:'12345678'}]
var text=[],number=[]
memo.map(function (v,k) {
if(v.type=='text'){
text.push(v.content)
}
if(v.type=='number'){
number.push(v.content)
}
})
19、forEach循环
this.arr.forEach((value,index)=>{this.value=value+=value})
20、reduce 计算数组元素相加后的总和
array.reduce(function(total, currentValue, currentIndex, arr), initialValue);
total:初始值,currentValue 当前元素 currentIndex 当前元素索引 arr 当前元素数组对象 initialValue 传递给函数的初始值
return this.arr.reduce((total,v)=>{return total+v.count*v.prize},0)
21、活动路由的颜色 设置路由选中后路由连接的颜色,例如导航栏点击了相应的导航跳到了新的页面,导航栏相应的需要变颜色
linkActiveClass:'active'
22、工程化项目后在A组件想要引入B组件分三步,
在组件的同级目录下,新建个index.js
import Login from "./Login"
export default{
install:function(Vue){
Vue.component("Login",Login)
}
}
一、引入 import b from "./b"
二、声明 components {b}
在main.js下面引用组件并use
import Login from '@/components/common/login'
Vue.use(Login);
三、在template里面使用 <b></b>,<b></b>为全局组件哪里都可以调用
23、vueX状态管理,状态管理在简单的计算中无需使用因为vuex有点太重了
状态管理的四个属性
state----定义状态属性
getters----定义读取状态的方法
actions----定义改变状态的方法(用户调用)
mutations---定义改变状态的方法(实际上的状态改变是由mutations处理,actions调用mutations,用户调用actions)
vue中的一些用法,持续更新中......的更多相关文章
- vue项目常用方法封装,持续更新中。。。
vue项目中可以直接使用 1.常用工具类untils.js中 /* * 验证手机号是否合格 * true--说明合格 */ export function isPhone(phoneStr){ let ...
- Vue.js2.0中的变化(持续更新中)
最近自己在学习Vue.js,在看一些课程的时候可能Vue更新太块了导致课程所讲知识和现在Vue的版本不符,从而报错,我会在以后的帖子持续更新Vue的变化与更新,大家也可以一起交流,共同监督学习! 1. ...
- vue踩坑记,持续更新中......
1.运行项目报错 you may use special comments to disable some waring. use //eslint-disable-next-line.....吧啦吧 ...
- Windows批处理命令学习中遇到的坑--持续更新中
再次拾起windows批处理命令,下边将一些遇到的小问题写出来,希望可以帮到大家 1.set命令:set主要的作用是为变量赋值,类似于编程语言中的var i = Value:但是在使用的过程中一定要注 ...
- 【前端面试】Vue面试题总结(持续更新中)
Vue面试题总结(持续更新中) 题目参考链接 https://blog.csdn.net/weixin_45257157/article/details/106215158 由于已经有很多前辈深造VU ...
- Pig基础学习【持续更新中】
*本文参考了Pig官方文档以及已有的一些博客,并加上了自己的一些知识性的理解.目前正在持续更新中.* Pig作为一种处理大规模数据的高级查询语言,底层是转换成MapReduce实现的,可以作为MapR ...
- Pig语言基础-【持续更新中】
***本文参考了Pig官方文档以及已有的一些博客,并加上了自己的一些知识性的理解.目前正在持续更新中.*** Pig作为一种处理大规模数据的高级查询语言,底层是转换成MapReduce实现的, ...
- PHP 日常开发过程中的bug集合(持续更新中。。。)
PHP 日常开发过程中的bug集合(持续更新中...) 在日常php开发过程中,会遇到一些意想不到的bug,所以想着把这些bug记录下来,以免再犯! 1.字符串 '0.00'.'0.0'.'0' 是 ...
- 前端深入之js篇丨Array数组操作从入门到成神Up Up Up,持续更新中
写在前面 随着前端深入的不断学习,发现数组这个数据结构在前端中有着相当大的存在感,由于我初学前端的时候并没有系统性的学习数组,所以我将通过这篇文章同你一起学习数组,希望我们能一起进步,学会熟练操作数组 ...
- 史上最全的spark面试题——持续更新中
史上最全的spark面试题——持续更新中 2018年09月09日 16:34:10 为了九亿少女的期待 阅读数 13696更多 分类专栏: Spark 面试题 版权声明:本文为博主原创文章,遵循C ...
随机推荐
- PyQt学习随笔:PyQt中捕获键盘事件后获取具体按键值的方法
在PyQt中,如果要捕获键盘事件的具体按键,可以通过重写组件对象的keyPressEvent方法或event方法来捕获具体的按键,推荐使用keyPressEvent方法,因为event方法是一个通用事 ...
- PyQt(Python+Qt)学习随笔:QAbstractScrollArea的viewPort(视口)理解
老猿Python博文目录 老猿Python博客地址 在学习Designer中ItemViews类部件时,这些部件都有个父类QAbstractScrollArea,该父类是Qt滚动区域的低级抽象.该区域 ...
- 【老孟Flutter】41个酷炫的 Loading 组件库
老孟导读:目前 loading 库中包含41个动画组件,还会继续添加,同时也欢迎大家提交自己的 loading 动画组件或者直接微信发给我也可以. Github 地址:https://github.c ...
- 关于EF框架EntityState的几种状态
在使用EF框架时,我们通常都是通过调用SaveChanges方法把增加/修改/删除的数据提交到数据库,但是上下文是如何知道实体对象是增加.修改还是删除呢?答案是通过EntityState的枚举值来判断 ...
- this作为构造函数时注意点
在 JS 中,为了实现类,我们需要定义一些构造函数,在调用一个构造函数的时候加上 new 这个关键字: function Person(name) { this.name = name; consol ...
- mysql聚簇索引和非聚簇索引
聚簇索引 InnoDB使用的是聚簇索引 将数据与主键索引放在了一起,索引的叶子节点保存了行数据,找到了主键索引,即找到了行数据. 辅助索引记录了主键的位置,所以查询where name= xxx 时, ...
- SpringBoot使用Mybatis-plus及分页功能的细节部分
pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="htt ...
- schema与数据类型优化-高性能mysql
总结作为开发人员重点注意的内容!这是一篇有关高性能MYSQL第四章schema相关的笔记. 0.前言 在项目中,数据库表列有两个text字段,用来存储大文本,在数据规模达到40万后,如果查询没命中索引 ...
- Java8新增的这些集合骚操作,你掌握了嘛?
目录 Iterable的forEach Iterator的forEachRemaining Collection的removeIf Stream操作 List的replaceAll List的sort ...
- mysql 8.0 改变数据目录和日志目录(二)
一.背景 原数据库数据目录:/data/mysql3306/data,日志文件目录:/data/mysql3306/binlog 变更后数据库目录:/mysqldata/3306/data,日志文件目 ...