面试题小点(玩的)

1.vue2.0生命钩子
beforeCreate 初始化之后----> el 和 data 并未初始化

created 创建完成 --------->data 数据的初始化,el没有

beforeMount 挂载之前 ----->完成了 el 和 data 初始化

mounted 被创建 ------>完成挂载 dom元素已经加载到HTML中

beforeUpdate 数据更新前

updated 被更新后

activated

deactivated

beforeDestroy 销毁前

destroyed 销毁后
--------------------------------------------------------------------
2.vue 路由钩子函数
全局 前置钩子:router.beforeEach((to, from, next) 后置钩子:afterEach(to, from)
组件内的钩子函数:
beforeRouteEnter (to, from, next) {
// 在渲染该组件的对应路由被 confirm 前调用
// 不能获取组件实例 `this`
// 因为当钩子执行前,组件实例还没被创建
next(vm => {
// 通过 `vm` 访问组件实例
})
},
beforeRouteUpdate (to, from, next) {
// 在当前路由改变,但是该组件被复用时调用
// 举例来说,对于一个带有动态参数的路径 /foo/:id,在 /foo/1 和 /foo/2 之间跳转的时候,
// 由于会渲染同样的 Foo 组件,因此组件实例会被复用。而这个钩子就会在这个情况下被调用。
// 可以访问组件实例 `this`
},
beforeRouteLeave (to, from, next) {
// 导航离开该组件的对应路由时调用
// 可以访问组件实例 `this`
}
--------------------------------------------------------------------
3.vue路由传参
linkActiveClass:"router-link-active"(默认值),
mode hash 和 history
params:{xxx:xxx} --->this.$route.params.xxx
query: { xxx:xxx}} ---->this.$route.query.xxx ${拼参数}
<router-link :to="{name:'xxx',params:{xxx:xxx}}">
this.$router.push()/replace
---------------------------------------------------------------------
4.检索字符串里面的片段并获取该片段;
var str = 'ssbvbss$targetString$vvv'
var str1 = '$targetString$'
if(str.indexOf(str1)>-1){
var st = str.indexOf(str1);
var st3 = str.substr(st,str1.length)
console.log(st3,'存在')
}
---------------------------------------------------------------------
5.vue路由创建过程和实现原理
1.定义组件
2.定义路由 (每个路由应该映射一个组件)
3.创建router实例 ,然后传‘routes’ 配置
4.创建和挂载根实例,从而让整个应用都有路由功能
---------------------------------------------------------------------
1、当浏览器访问网页时候,其实是有真实的物理文件传输的,浏览器先将网页上的内容缓存到本地文件夹中然后渲染出来给用户查看;
2、第二次访问要比第一次快已经将这个网页上的信息缓存到了本地;
---------------------------------------------------------------------
在浏览器输入一串url浏览器做了什么事情?
1.发送请求报文(请求行+请求头+请求体)
2.处理浏览器请求
3.将处理结果返回浏览器
4.发送响应报文(响应行+响应头+响应体)
5.解析浏览器返回的内容呈现给用户
---------------------------------------------------------------------
url拆分
1.网络协议类型:http://
2.服务器ip地址:127.0.0.1
3.服务器端口:80
4.资源名称 index.html
---------------------------------------------------------------------
vue 混合mixins 组件公用的东西抛出单组件使用mixins[xxx],单组件data定义的会把mixins里面的data定义的覆盖;
---------------------------------------------------------------------
store.commit 提交的是mutation;

原文地址:https://www.cnblogs.com/lhl66/p/10271403.html