Vue相关面试问答TOP2(能不能在method中使⽤箭头函数、如何定义组件的data、v-if 和 v-show的区别、computed、watch、methods的区别、axios的特点....)

1、能不能在method中使⽤箭头函数?

              理论上可以使⽤,但是我不会使⽤,因为箭头函数中的this的指向与⼀般函数不同 ⼀般函数执⾏调⽤ 它的对象
              箭头函数中的this指向的是它的⽗级,这就会使在箭头函数中使⽤this.$store.state等⽅法时出现问题

2、如何定义组件的data?

1 Vue.component('⾃定义标签名',{
2 template:”#模板id名“,
3 data:founction(){} //data中必须是有返回值的函数并且返回的是对象
4 }

3、 v-if 和 v-show的区别?

        v-if是通过控制节点是否渲染来显示或隐藏元素的

        v-show是通过控制节点的display属性来控制节点的显示和隐藏的

        所以v-if适⽤于单次判断节点的状态 v-show是⽤在节点需要反复显示和隐藏时

4、computed、watch、methods的区别?

        watch是⽤来监听数据的改变的 当所监听的数据发⽣改变时就会触发所定义的事件,它的值可以是⼀ 个对象
        methods 与 computed类似他们的值只能是⽅法
        但是不同的是 computed中的⽅法是以变量的⽅式使⽤的并且会存到缓存中

5、axios的特点?

        axios是⼀个基于promise的HTTP库,⽀持promise的所有API;
        它可以拦截请求和响应;
        它可以转换请求数据和响应数据,并对响应回来的内容⾃动转换为json类型的数据;
        它安全性更⾼,客户端⽀持防御XSRF;

6、如何解决⻚⾯刷新vuex被清空的问题?

        将vuex中的数据存⼊sessionStorage中或locationStorage中

        或者在⻚⾯刷新时重新进⾏数据的请求再存⼊vuex中

7、axios和ajax有什么不同?

        1.axios是对ajax的封装

        2.axios返回的是promise对象可以使⽤promise的api ajax是通过回调函数获取数据

8、vue等单⻚⾯⽹站的优势和不⾜

单⻚⾯应⽤:

        就是只有⼀张Web⻚⾯的应⽤。单⻚应⽤程序 (SPA) 是加载单个HTML ⻚⾯并在⽤户与应⽤程序交互
        时动态更新该⻚⾯的Web应⽤程序。浏览器⼀开始会加载必需的HTML、CSS和JavaScript,所有的操作
        都在这张⻚⾯上完成,都由JavaScript来控制。因此,对单⻚应⽤来说模块化的开发和设计显得相当重要。

优势:

        提供了更加吸引⼈的⽤户体验:具有桌⾯应⽤的即时性、⽹站的可移植性和可访问性。
        单⻚应⽤的内容的改变不需要重新加载整个⻚⾯,web应⽤更具响应性和更令⼈着迷。
        单⻚应⽤没有⻚⾯之间的切换,就不会出现“⽩屏现象”,也不会出现假死并有“闪烁”现象
        单⻚应⽤相对服务器压⼒⼩,服务器只⽤出数据就可以,不⽤管展示逻辑和⻚⾯合成,吞吐能⼒会提⾼ ⼏倍。
        良好的前后端分离。后端不再负责模板渲染、输出⻚⾯⼯作,后端API通⽤化,即同⼀套后端程序代 码,不⽤修改就可以⽤于Web界⾯、⼿机、平板等多种客户端。

不⾜:

        ⾸次加载耗时⽐较多。
        SEO问题,不利于百度,360等搜索引擎收录。
        容易造成css命名冲突。
        前进、后退、地址栏、书签等,都需要程序进⾏管理,⻚⾯的复杂度很⾼,需要⼀定的技能⽔平和开发成本⾼。

9、使⽤mvvm设计模式有什么优势?

        低耦合:视图(View)可以独⽴于 Model 变化和修改,⼀个 ViewModel 可以绑定到不同 的"View"上,当View变化的时候Model可以不变,当Model变化的时候View也可以不变。

        独⽴开发 :开发⼈员可以专注于业务逻辑和数据的开发(ViewModel),设计⼈员可以专注于⻚⾯设 计。
        可重⽤性 :你可以把⼀些视图逻辑放在⼀个ViewModel⾥⾯,让很多 view 重⽤这段视图逻辑。
        可测试 :界⾯素来是⽐较难于测试的,⽽现在测试可以针对ViewModel来写。

10、如何编写可复⽤的组件

        在编写组件的时候,⾸先要做的就是组件的抽象,考虑组件是否可复⽤,组件之间是否存在耦合。⼀次性组件跟其他组件紧密耦合没关系,但是可复⽤组件⼀定要定义⼀个清晰的公开接⼝。
组件的接⼝主要分为三部分:prop、事件、slot:
        prop 允许外部环境传递数据给组件,在vue-cli⼯程中也可以使⽤vuex等传递数据。
        事件 允许组件触发外部环境的 action
        slot 允许外部环境将内容插⼊到组件的视图结构内。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值