Vue基础

Vue简洁、轻量、视图与数据分离,无需操作DOM

指令

v-model.lazy //在“change”时而非“input”时更新

v-model.number //将用户的输入值转为数值类型

v-model.trim //过滤用户输入的首尾空白字符

变化

1)过滤器 filters

可以串联:{{ message | filterA | filterB }}

可以接收参数:{{ message | filterA(‘arg1’, arg2) }}

2)计算属性 computed

计算属性的结果会被缓存,除非依赖的响应式属性变化才会重新计算

computed是属性调用,而methods是函数调用

3)侦听器watch

Vue 通过 watch 选项提供了一个更通用的方法,来响应数据的变化。

深度侦听 deep:true:可以监听到数组和对象的变化

当需要在数据变化时执行异步或开销较大的操作时可以使用侦听器。

handler(局部监听时可使用)

生命周期钩子

在生命周期中被自动调用的函数叫做生命周期函数,也被形象的称为钩子函数

beforeCreate:加一些loading事件

created:结束loading事件,还做一些初始化,实现函数自执行等

mounted:发起后端请求,取回数据;接收页面之间传递的参数;子组件向父组件传递参数

路由

router.go(n);类似 window.history.go(n)

router.push(‘home’) // 字符串,// 向 history 添加新记录

router.push({ path: ‘home’ }) // 对象

router.replace(location) //不会向 history 添加新记录,

router.push({ name: ‘user’, params: { userId: 123 }}) // 命名的路由 /user/123

router.push({ path: ‘register’, query: { plan: ‘private’ }}) // 带查询参数 /register?plan=private

组件内的守卫

写在每个单独的vue文件里面的路由守卫

beforeRouteEnter(to, from, next) // 进入前调用

beforeRouteUpdate(to, from, next) // 在当前路由改变调用

beforeRouteLeave(to, from, next)// 离开该组件调用

router和route区别

router是“路由实例”对象包括了路由的跳转方法,history对象、钩子函数等。

如:$router.push({path:'home'});

route是“路由信息对象”,包括path,params,hash,query,fullPath, matched,name等

VUEX

专为vue.js 应用程序开发的状态管理模式

1)state:存储状态,Vuex store实例的根状态对象,用于定义共享的状态变量;

2)getters:读取器

外部程序通过它获取变量的具体值,或者在取值前做一些计算;

外部调用方式:store.getters.personInfo();

3)mutations:修改器

只用于修改state中定义的状态变量,这是vuex中唯一修改state的方式;

外部调用方式:store.commit('SET_AGE',18), 不支持异步

如:this.$store.commit('changecount')

4)actions:动作

向store发出调用通知,执行本地或者远端的某一操作;

外部调用方式:store.dispatch('nameAsyn'),支持异步

5)modules:模块,向store注入其他子模块,

可以将其他模块以命名空间的方式引用,只是要加上当前子模块名;

外部调用方式:store.a.getters.xxx();内容就相当于是store的一个实例;

6)strict:用于设置Vuex的运行模式,true为调试模式,false为生产模式

7)plugin:用于向Vuex加入运行期的插件

懒加载

路由和组件的常用两种懒加载方式:

1)vue异步组件实现路由懒加载

  component:resolve=>([‘需要加载的路由的地址’,resolve])

2)es6提出的import(推荐使用这种方式)

  const HelloWorld = ()=>import(‘需要加载的模块地址’)

apply 和call

通过apply和call改变函数的this指向,他们两个函数的第一个参数都是一样的表示要改变指向的那个对象;

第二个是传入的参数,apply是数组,而call则是arg1,arg2…这种形式。

闭包含义和作用

闭包:函数套函数,外部可读取函数内部的数据;

函数1套函数2,1内部的所有局部变量,对2都是可见的

作用:1)可以读取函数内部的变量,2)让这些变量的值始终保持在内存中

href和src区别

href标识超文本引用,用在link和a等元素上,href是引用和页面关联,是在当前元素和引用资源之间建立联系;

src表示引用资源,表示替换当前元素,用在img,script,iframe上,src是页面内容不可缺少的一部分。

document.ready和document.onload区别

document.ready:在DOM加载完成后,可以写多个.ready,可以执行多次;

document.onload:在网页所有内容加载完成后才执行,只能执行一次;

map文件

.map文件的作用:

项目打包后,代码都是经过压缩加密的,如果运行时报错,map准确的输出是哪一行哪一列有错;

若JS文件夹中出现一些map文件,如下设置:

进入项目包/config/index.js ,设置 productionSourceMap: false

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值