nodejs( koa2 )配置 browserHistory
前言
既然能搜到并且还点进来看这篇文章,
那么肯定是知道后台为什么要配置 browserHistory,
也肯定知道为什么非要去用相对来说更麻烦的吧browserHistory,
而不用更简单点的不需要后台配置的 hashHistory ,
以及 browserHistory 和 hashHistory 的区别。
好吧,如果不知道,可以去搜一下,
很多很多。这里不多做说明,
废话不多说, 直接上代码!
正文
我是用脚手架 koa-generator 生成的 koa2项目。前端是用 react + antd 做的,路由是用的 browserHistory。
1、 首先我们需要下载一个依赖 connect-history-api-fallback
npm install connect-history-api-fallback --save
2、 在根目录app.js中引入依赖。
const connectHistory = require('connect-history-api-fallback');
app.use(() => {
    const middleware = connectHistory();
    const noop = ()  => {
    };
    return async (ctx, next)=> {
        middleware(ctx, null, noop);
        await next();
    };
});
PS: 这里其实是写了一个中间件,
这里的代码一定要放在使用其他中间件之前,
如果不知道位置, 那么你就放在其他app.use() 之前 。
connectHistory 也可以传入配置,
比如在控制台显示转发的日志 connectHistory({verbose: true}) 具体可以查官网看。
nodejs( koa2 )配置 browserHistory的更多相关文章
- 把 nodejs koa2 制作的后台接口 部署到 腾讯云服务器
		我 使用 nodejs koa2框架 制作后端接口, 现在将nodejs koa2 部署到服务器 koa2项目 实现 接口 可以看我的 这篇文章: 简单实现 nodejs koa2 mysql 增删改 ... 
- 简单实现 nodejs koa2 mysql  增删改查  制作接口
		1.首先 在电脑上安装 nodejs (此处略过) 2.全局安装 koa2 (这里使用的淘宝镜像cnpm,有兴趣的同学可以自行搜索下) cnpm install koa-generator -g 3. ... 
- web全栈后台权限管理系统(VUE+ElementUi+nodeJs+koa2)
		web全栈后台权限管理系统(VUE+ElementUi+nodeJs+koa2) 主要技术 前端 vue 全家桶 ElementUI 后端 Node.js Koa2 Mongoess 数据库 mong ... 
- Nodejs+Grunt配置SASS项目自动编译
		Nodejs+Grunt配置SASS项目自动编译 早前听说Nodejs和Grunt很强大,特别是用来构建自动化的前端开发,更是强大无比.但一直碍于自己掌握的技术有限,不敢深入,也未曾深入下去.最近在开 ... 
- Linux系统(Centos)下安装nodejs并配置环境
		总结Centos下安装nodejs并配置环境,记录成功安装的方法.推荐的安装方法是利用已编译的二进制文件安装,不推荐使用源码的形式安装,一是源码安装比较麻烦,二是需要自行下载编译浪费时间. 1.安装n ... 
- nodejs pm2配置使用
		nodejs pm2配置使用教程参考链接:http://www.111cn.net/sys/linux/100927.htm 安装步骤: yum -y install npmnpm install - ... 
- NODE-windows 下安装nodejs及其配置环境
		相信对于很多关注javascript发展的同学来说,nodejs已经不是一个陌生的词眼.有关nodejs的相关资料网上已经铺天盖地.由于它的高并发特性,造就了其特殊的应用地位. 国内目前关注最高,维护 ... 
- 这可能是你看过最详细的NodeJS安装配置教程
		博主是一枚Java菜鸡,今天在B站上看一些教程视频的时候偶尔看了一眼评论区,发现好多人在Node和Vue安装的位置卡住了,便决定今晚肝出一套最详细的NodeJS安装配置的教程 本文适合初次接触Node ... 
- Windows下nodejs 模块配置 全局模式与本地模式的区别
		第1步:下载.安装文件 (nodejs的官网http://www.nodejs.org/download/ ) 第2步:安装相关模块环境 打开C:\Program Files\nodejs 目录你会发 ... 
随机推荐
- Python爬虫教程-00-写在前面
			鉴于好多人想学Python爬虫,缺没有简单易学的教程,我将在CSDN和大家分享Python爬虫的学习笔记,不定期更新 基础要求 Python 基础知识 Python 的基础知识,大家可以去菜鸟教程进行 ... 
- 购物车redis存储结构
- SqlServer  批量添加记录
			declare @i int ) begin INSERT INTO [dbo].[Settlements] ([ID] ,[Count] ,[SettlementDate]) VALUES ( ne ... 
- MHA源码分析——环境部署
			为了更好地了解MHA的原理,计划对MHA源码进行详细的阅读,本文主要为部署源码阅读环境. 一.概述 mha是由perl语言开发,这里想通过eclipse+perl组件来阅读其源码,所以我们环境需要安装 ... 
- Python学习---面向对象的学习[基础]
			面向对象 面向对象的三大特性是指:封装.继承和多态. 说明: Python可以函数式编程,也可以面向对象编程 l 面向过程:根据业务逻辑从上到下写垒代码 l 函数式 :将某功能代码封装到函数中,日后便 ... 
- 使用 Nginx 对 ASP.NETCore网站 或 Docker 等进行反向代理,宝塔面板对 ASP.NET Core 反向代理
			1,Nginx 的 配置文件 Nginx 可以配置反向代理.负载均匀等, 其默认配置文件名为 nginx.conf . 一般存放于 /你的安装目录/nginx/conf 下 Nginx 加载配置信息 ... 
- TFS使用笔记
			TFS是用来存储文件的服务器,放置不同版本的文件.因此文件的数量和内容因版本不同而不同. 在Fig-00中,服务器和本地的对应文件夹Common下的因版本不一致,所以文件数量是不一致的. Fig-00 ... 
- [EffectiveC++]item06:若不想使用编译器自动生成的函数,就该明确决绝
- Eclipse PHPEclipse 配置
			最近偶来兴致趁着有些时间,看了看php的书. 说到php就不得不提php的开发环境了,一般的都是采用apache做服务器.mysql做数据库,再加上php组合成一个完备的运行环境,但是好像没有写代码的 ... 
- Android 6.0动态权限申请教程
			转载请标明出处: http://www.cnblogs.com/why168888/p/6580396.html 本文出自:[Edwin博客园] PermissionManage 介绍 如果设备运行的 ... 
