vue面试题(三)
route和route和route和router的区别?
$route 路由信息
$router 用来做路由跳转
Vue路由实现:hash 和history 模式的区别?
区别: hash模式:
1.采用的是window.onhashchange事件实现。
2.可以实现前进 后退 刷新。
3.比如这个URL:http://www.abc.com/#/hello, hash 的值为#/hello。它的特点在于:hash 虽然出现URL中,但不会被包含在HTTP请求中, 对后端完全没有影响,因此改变hash不会重新加载页面
history模式:
1.采用的是利用了HTML5 History Interface 中新增的pushState() 和replaceState() 方法。
2.可以前进、后退,但是刷新有可能会出现404的报错
3.前端的url必须和实际向后端发起请求的url 一致,如http://www.abc.com/book/id 。如果后端缺少对/book/id 的路由处理,将返回404错误。
怎么定义vue-router的动态路由?怎么获取传过来的动态参数?
path:"/foodId/:id"
获取:this.$route.params.id
十四 写出VUE router中的组件,并说明它们之间的作用?
router-link router-view router-link是路由导航组件,会生成a标签,需要设置to属性;
router-view是路由出口,会根据浏览器地址进行匹配路由规则,并将匹配到的路由规则对应的组件展示在router-view处。
十五 vue中的数组发生改变了,但是页面没有渲染,怎么办?
arr.splice() Vue.set() vm.$set()