文章目录
- 讲一下B/S架构和C/S架构的区别是什么
- 4、怎么定义vue-router的动态路由?怎么获取传过来的动态参数?
讲一下B/S架构和C/S架构的区别是什么
B/S: B是英文单词Browser的首字母,即浏览器的意思; S是英文单词Server的首字母,即服务器的意思。B/S就是Browser/Server的缩写,即浏
览器/服务器模式。
这种模式统一了客户端,让核心的业务处理在服务端完成.只要在电脑或手机上安装浏览器,就可以通过web Server与数据库进行数据交互了
CS:C是英文单词Client首字母,即客户端的意思,C/S就是”Client/Server”的缩写,即”客户端/服务器”模式,主要用于局域网内。
它是一种软件系统体系结构,它是将需要处理的的
业务合理的分配到客户端和服务器端,这样可以降低通信成本,但是升级相对困难,就像我们手机中安装的微信,qq,王者农药等应用程序都是C/S结构的。
C/S架构软件有一个特点,就是如果用户要使用的话,要下载一个客户端,安装后就可以使用
区别:
1.硬件环境不同.C/S通常是建立在专用的网络上,小范围的网络环境,而B/S是建立在广域网.上的,适应范围强,通常有操作系统和浏览器就行。
2.C/S比B/S结构更安全,因为用户群相对固定,对信息的保护更强。
3.B/S结构维护升级比较简单,而C/s结构维护升级相对困难。
4、怎么定义vue-router的动态路由?怎么获取传过来的动态参数?
在路由path上配置动态参数,在前往的路由页面使用this.$route. .params截取携带过来的路由参数。
一.字符串写法
1.query参数
this.$router.push("/login/?k=1")//跳转后的页面通过$route.query.k接收
2 params参数
this.$router.push("/login/" +this.keyword)path: '/search/:keyword”4 | //通过$ route.params.keyword接收
二对象写法
1.query参数
this.$router.push( {name : "login" , query: {keyword:this .keyword}})//注意query传参对象写法必须给路由组件命名(加name属性)
2 params参数
this.$router.push({name:"login" ,params ; {keywo rd :this .keyword}}//注意params传参对象写法必须给路由组件命名(加name属性)
三指定params参数可传可不传
1.在占位后面加个问号,就不会出现路径有问题
path: '/search/:keyword? '
2.如果传递的是空字符串,可以用undefined解决
this.srouter.push({name: "login" , params:{ikeyword:this .keyword| lundefined}})