路由

应用react-keeper

此生再无相见时 提交于 2020-03-06 17:33:45
在vue中有个很好用的组件<keep-alive>,但是在react中官方却没有提供,可以使用react-keeper插件来实现 项目实践 使用React-Keeper还是要慎重,react-keeper加上会出现两个问题:1.状态缓存了,如果很多页面都是列表,这代表每个页面都有缓存数据,下次进入页面的时候会展示离开时的状态,那么缓存的数据量也不少,会占用浏览器内存,性能肯定会有影响,什么时候清除是个问题。插件提供了cache='parent'为父组件缓存,在父组件不解绑的情况下会维持缓存状态。那么要解决的话就要有个父组件,如果父组件是最外层组件,不会解除,那么就要改变路由了,但插件并没有提供手动消除缓存的方式,使用起来很不灵活,而且会与router3 link有些不同,总之挺麻烦的。2.样式问题,页面回来时,有些样式会缺失,利用生命周期可以解决,但componentDidMount不会执行,componentWillUpdate、render和 componentDidUpdate,如果你在这些周期里面改变数据状态,那么组件周期将一直循环下去,浏览器性能大受影响! 下面就是转载的内容了 了解React的同学一定了解React-Router,这个几乎是React单页面应用必备的路由框架。如果有足够多的开发经验,你一定会发现React-Router的很多问题,比如:没有页面缓存

rip四种默认路由下认机制实验

喜欢而已 提交于 2020-03-06 14:04:19
干拓扑 A方案: R1: ip route 0.0.0.0 0.0.0.0 e0/1 router rip network 0.0.0.0。 (到有些摸拟器是干不了的,真机可以) B方案: 写默认静态要跟下一跳。 配置: ip route 0.0.0.0 0.0.0.0 e0/1 14.1.1.4 跟下一跳就不会以直连的形式出现 在进入rip进程 redistribute static C方案: 直接在全局视图 ip default-network 14.0.0.0 我的eveng不支持 D方案: 进入router rip default-information originate 习惯这种,最灵活。华为只能 这种 来源: CSDN 作者: 李太白邀月 链接: https://blog.csdn.net/weixin_45821358/article/details/104693116

查看路由器地址是否是公网ip

怎甘沉沦 提交于 2020-03-06 11:32:49
1、登陆路由器管理页面(我用的腾达路由器,官方地址: http://192.168.1.1/ ) 2、看到WAN IP就是公网ip,但是这个ip不一定就是真正的公网,有可能是运营商提供给你的私有IP 3、打开百度,输入:ip地址,敲回车。 4、如果这个地址和你路由器的WAN ip一样,那就是公网ip,可以做内网穿透。如果不是,那就是运营商给你的私有ip地址,如果要做路由器映射,联系供应商,分配公网ip地址。 来源: CSDN 作者: java大本营 链接: https://blog.csdn.net/weixin_39327556/article/details/104691502

前端路由实现原理

六月ゝ 毕业季﹏ 提交于 2020-03-06 09:00:46
何为前端路由? 路由(Router)这个概念最先是后端出现的,是用来跟后端服务器进行交互的一种方式,通过不同的路径,来请求不同的资源,请求不同的页面是路由的其中一种功能。 前端随着 ajax 的流行,数据请求可以在不刷新浏览器的情况下进行。异步交互体验中最盛行的就是 SPA —— 单页应用。单页应用不仅仅是在页面交互时无刷新的,连页面跳转都是无刷新的,为了实现单页应用,所以就有了前端路由。 前端Router基本功能 一个基本的前端路由至少应该提供以下功能: 前端Router可以控制浏览器的 history,使的浏览器不会在 URL 发生改变时刷新整个页面。 前端Router需要维护一个 URL 历史栈,通过这个栈可以返回之前页面,进入下一个页面。 前端路由实现原理就是匹配不同的 url 路径,进行解析,然后动态的渲染出区域 html 内容。但是这样存在一个问题,就是 url 每次变化的时候,都会造成页面的刷新。那解决问题的思路便是在改变 url 的情况下,保证页面的不刷新。目前 Router有两种实现方式 History 和 hash。 Hash 路由 URL Hash 的形式类似如下: // 表示文章列表页面 https://www.limitcode.com/#/list // 表示文章详情页面 https://www.limitcode.com/#/detail #

vue模块化(echart+element ui)

有些话、适合烂在心里 提交于 2020-03-06 08:36:46
最近看了下vue的框架,随手做了个项目,记录分享下 技术框架: vue.js + webpack + element ui + echart 首先看下npm package.js 上面的图 主要是配置的是npm 打包命令 和引入vue-route vue的路由文件 和element ui 文件 下面这个是 引入echart.js 文件, 基本资料就这些。 首先我们开始构建一个vue-cli项目 1.首先node环境(这里就不多啰嗦了) 2.执行vue-cli命令 npm install --global vue-cli (这里你可以全局装,也可以装到项目路径) 3.检查下 vue是否装好 vue -V (能看到版本号就是安装成功了) 4.用vue新建一个项目 vue init webpack my-project ESLint规范建议开启,加强代码规范 (中间遇到 ESLint可以自己选择开启 或者关闭) 5.弄好项目后 npm install 下 初始化下包 6.最后进入项目路径 执行 npm run dev 命令 如果能看到页面 证明项目搭建成功 更加详细的配置 请参考 http://www.cnblogs.com/pearl07/p/6247389.html 上面已经完成了vue-cli项目的基本构建 vue+webpack已经集成了 这时候我们需要构建两个页面 看下路由功能

Vue-Router 源码分析(二) 设计思想及代码结构

帅比萌擦擦* 提交于 2020-03-06 08:02:19
根据VueRouter的执行流程,可以通过这三个步骤来理解它的设计思想: 第一步 :我们new VueRouter创建VueRouter实例的时候会通过深度遍历把传入的router属性对应的数组给解析一下,保存到一个Map中,每个Map对应router的一个元素,我们称之为路由记录,解析的时候会给每个路由记录增加一个正则表达式,用于<vuerouter-link>组件在渲染时查找哪个路由记录可以与之匹配 第二步 :解析<router-link></router-link>组件的时候首先获取名为to的props(例如<router-link to="/login"><a>登陆</a></router-link>里的to属性),然后会遍历第一步Map里的每个记录(路由记录),并用路由记录中的正则去匹配这个to值,看看该正则是否能匹配,如果能匹配则表示可以渲染这个路由记录对应的组件了,然后通过Vue内部的$createElement全局函数渲染一个原生DOM标签(默认为a标签,可以通过<router-link/>组件的tag这个props去修改它),渲染后会在这个DOM对象上绑定一个click事件,当click事件触发时,会调用VueRouter实例的push()方法去修改路由, 注意,VueRouter是通过click事件来触发路由的,不是通过a的href属性来触发

从头开始学习vue-router

别说谁变了你拦得住时间么 提交于 2020-03-06 03:33:35
一、前言 要学习vue-router就要先知道这里的路由是什么?为什么我们不能像原来一样直接用 标签编写链接哪?vue-router如何使用?常见路由操作有哪些?等等这些问题,就是本篇要探讨的主要问题。 二、vue-router是什么 这里的路由并不是指我们平时所说的硬件路由器, 这里的路由就是SPA(单页应用)的路径管理器 。再通俗的说,vue-router就是WebApp的链接路径管理系统。 vue-router是Vue.js官方的路由插件,它和vue.js是深度集成的,适合用于构建单页面应用。vue的单页面应用是基于路由和组件的,路由用于设定访问路径,并将路径和组件映射起来。传统的页面应用,是用一些超链接来实现页面切换和跳转的。在vue-router单页面应用中,则是路径之间的切换,也就是组件的切换。 路由模块的本质 就是建立起url和页面之间的映射关系 。 至于我们为啥不能用a标签,这是因为用Vue做的都是单页应用( 当你的项目准备打包时,运行 npm run build 时,就会生成dist文件夹,这里面只有静态资源和一个index.html页面 ),所以你写的 标签是不起作用的,你必须使用vue-router来进行管理。 三、vue-router实现原理 SPA(single page application):单一页面应用程序,只有一个完整的页面;它在加载页面时

从头开始学习vue-router

孤街醉人 提交于 2020-03-06 03:32:44
一、前言 要学习vue-router就要先知道这里的路由是什么?为什么我们不能像原来一样直接用标签编写链接哪?vue-router如何使用?常见路由操作有哪些?等等这些问题,就是本篇要探讨的主要问题。 二、vue-router是什么 这里的路由并不是指我们平时所说的硬件路由器, 这里的路由就是SPA(单页应用)的路径管理器 。再通俗的说,vue-router就是WebApp的链接路径管理系统。 vue-router是Vue.js官方的路由插件,它和vue.js是深度集成的,适合用于构建单页面应用。vue的单页面应用是基于路由和组件的,路由用于设定访问路径,并将路径和组件映射起来。传统的页面应用,是用一些超链接来实现页面切换和跳转的。在vue-router单页面应用中,则是路径之间的切换,也就是组件的切换。 路由模块的本质 就是建立起url和页面之间的映射关系 。 至于我们为啥不能用a标签,这是因为用Vue做的都是单页应用( 当你的项目准备打包时,运行 npm run build 时,就会生成dist文件夹,这里面只有静态资源和一个index.html页面 ),所以你写的标签是不起作用的,你必须使用vue-router来进行管理。 三、vue-router实现原理 SPA(single page application):单一页面应用程序,只有一个完整的页面;它在加载页面时

计算机网络 | 划分子网 | 子网掩码 | 子网划分的方法

╄→гoц情女王★ 提交于 2020-03-06 02:18:59
目录 一.划分子网 二.子网掩码 三.子网划分的方法 四.例题讲解 一.划分子网 划分子网的方法是从网络的主机号借用若干位作为子网号 (subnet -id), 当然主机号也就相应减少了同样的位数 。于是两级IP地址在本单位内部就变为三级IP地址:网络号、子网号和主机号。也可以用以下记法来表示: 凡是从其他网络发送给某个单位某台主机的IP数据报,仍然是根据IP数据报的目的网络号找到连接在本单位网络上的路由器。但此路由器在收到IP数据报后,再按目的网络号和子网号找到目的子网,把IP数据报交付目的主机。 下面用例子说明划分子网的概念。图表示某单位拥有一个B类IP地址,网络地址是145.13.0.0(网络号是145.13)。凡目的地址为145.13.x.x的数据报都被送到这个网络上的路由器R1。 现把上图的网络划分为三个子网。这里假定子网号占用8位,因此在增加了子网号后,主机号就只有8位。所划分的三个子网分别是:145.13.3.0,145.13.7.0和145.13.21.0.在划分子网后,整个网络对外部仍表现为一个网络,其网络地址仍为145.13.0.0。但网络145.13.0.0上的路由器R1在收到外来的数据报后,再根据数据报的目的地址把它转发到相应的子网. 总之,当没有划分子网时,IP地址是两级结构。划分子网后P地址变成了三级结构。划分子网只是把IP地址的主机号这部分进行再划分

Spring Cloud Gateway 扩展动态路由

人走茶凉 提交于 2020-03-06 02:13:04
Spring Cloud Gateway 扩展动态路由 路由配置 配置文件 spring : application : name : sc - gw cloud : nacos : discovery : server-addr : 127.0.0.1 : 8848 config : server-addr : 127.0.0.1 : 8848 file-extension : yml shared-dataids : application - $ { spring.profiles.active } .$ { spring.cloud.nacos.config.file - extension } gateway : discovery : locator : enabled : true lower-case-service-id : true routes : # Route Predicate Factories - id : nacos - getway - provider #自定义的路由ID,保持唯一 uri : lb : //nacos - provider #目标服务地址,以lib://开头(lb代表从注册中心获取服务) predicates : #路由条件,Predicate 接受一个输入参数,返回一个布尔值结果。该接口包含多种默认方法来将