Vue面试归纳

1. Vue项目axios跨域

跨域问题出现,使用webpack-dev-server的proxy功能处理

    1. 将请求地址改为本地开发服务的域下,并加入暗号

    2. 在config/index.js->dev->proxyTable中进行暗号的匹配

2.Vue路由原理:

就是通过检测地址栏变化后将对应的路由组件进行切换(卸载和安装)

3.vue的坑 

将store注册到根组件下,我们可以在组件下写this.$store.state来访问到state对象,但是这样是有问题的我们会发现进入有items数据的页面后,数据并没有被渲染出来,而是等到切换页面,在切换回来的时候才会被渲染出来,因此问题就在应该把store中的数据放在computed下而不是data下

当我们在路由中配置了不同的router-link对应于不同的组件的时候,会发现npm run dev 之后空白页,解决办法就是重定向path中的值,而不是component中的值

4.git

写代码的地方就叫工作区(红色),可把工作区的代码提交到暂存区中,如果暂存区中的代码没问题,就提交到版本区,而SVN属于工作区直接提交到版本区,如果提交错了也回不来了。

git  add . 把多个文件提交暂存区(绿色)

git  commit -m (是版本详细信息)  

用git status (查看工作区)查看nothing to commit  working   tree  clean(工作区是干净的就代表提交成功)

如果文件发生改变后git status 会报红modified+文件名,这时要直接提交到版本区用git  commit -a -m +注释

git  log查看所有上传的版本,第一行commit 加哈希值,然后显示作者邮箱啥的,后面会有:显示,打回车就会都显示直到end,打quiet退出,通过git log你可以看到版本id想回退到哪个版本就找对应id。

git diff  工作区和暂存区的对比可以看到前后差异  +后的代码就是新添加的(绿色的)红色的就是减掉的代码,差别明显

git  diff  --cached (暂存区与版本区对比)报绿色的就是新添加的差异,git diff  master 工作区与版本区的对比

git  reset  HEAD+文件名 从暂存区撤回工作区

git checkout  -- 文件名  从工作区撤销到上次提交的版本区

git remote (查看远程仓库的名字) -v 查看远程地址origin(远程仓库的名字)

git push origin master(推送到远程仓库)git  push  -u origin master -f (强制推送到远程仓库)

git fetch (从远程获取但不与当前代码合并)    git  pull (从远程获取并与当前合并)git diff master(查看两个分支的异同)

5.typeof 与 instanceof有啥区别

typeof用来判断变量的数据类型。 instanceof用来判断某个对象是否 属于父类型。

6.src和href区别

src用于替换当前元素,href用于在当前文档和引用资源之间建立联系

7.vue-loader

vue-loader 是 webpack 的一个 loader,用于处理 .vue 文件。可以把不是js的文件转换为js。

8.动态组件怎么做

通过使用保留的<component>元素,动态的绑定到它的is特性,可以实现动态组件

9.什么是动态组件

多个组件使用同一个挂载点,并动态切换,这就是动态组件。

10.了解哪些Vue加密

1.MD5加密(简化的哈希加密 ,64位加密)

先项目根目录下安装npm   install   --save   js-md5

在main.js中将md5转换成vue原型

import md5 from  "js-md5"

Vue.prototype.$md5 = md5

在需要的文件中写 this.$md5 ("hello")

2   base64加密

项目根目录下安装npm install --save js-base64

在项目文件中引入

let Base64 = require('js-base64').Base64;

11.对箭头函数的看法

箭头函数不会自动绑定局部变量,所以箭头函数没有它自己的this值,箭头函数内的this值继承自外围作用域,在箭头函数中调用this时,仅仅是简单的沿着作用域链向上寻找 ,找到最近的一个this来使用,箭头函数的this,通常指向其上下文的this,任何方法都改变不了指向。箭头函数可以绑定this对象,大大减少了call apply bind 显式绑定this的写法,但是箭头函数不是适合所有的场合

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 33、JS中的本地存储 把一些信息存储在当前浏览器指定域下的某一个地方(存储到物理硬盘中)1、不能跨浏览器传输:在...
    萌妹撒阅读 2,117评论 0 2
  • 响应式布局的理解 响应式开发目的是一套代码可以在多种终端运行,适应不同屏幕的大小,其原理是运用媒体查询,在不同屏幕...
    懒猫_6500阅读 806评论 0 0
  • ## 框架和库的区别?> 框架(framework):一套完整的软件设计架构和**解决方案**。> > 库(lib...
    Rui_bdad阅读 2,979评论 1 4
  • git作为时下最流行的代码管理工具,Git权威指南总结了十条喜欢Git的理由: 异地协同工作; 现场版本控制; 重...
    古斟布衣阅读 1,851评论 0 12
  • 你的别离 我畏手畏脚 我开始害怕黑夜 开始躲避人群与喧嚣 开始逃离嘘吁 开始独自繾行 我本就害怕孤独,寂寞,静廖 ...
    小巴贱儿阅读 188评论 0 0