Vue-cli创建项目从单页面到多页面2-history模式

之前讲过怎样将vue-cli创建的项目改造成多页面(vue-cli创建项目从单页面到多页面),今天说一下怎样在多页面的前提下使用history模式。

如何使用history模式

因为vue默认的hash模式的url有些丑,所以我们可以在路由的配置中添加如下配置:

   import Router from ‘vue-router‘;
   new Router({
     mode: ‘history‘  // 这样设置后,就可以去掉url中丑丑的“#”啦
   });

但是如果只是这样使用的话,在本地开发时,有一个问题,那就是当你访问其他页面的时候,只能使用xxx/pagename.html 这种方式访问,而不是xxx/xxx2/xxx3等方式,直接刷新后,并不能定位到你预期的pagename.html,反而会定位到index.html(因为默认会定位到这里);

解决方案

在build/dev-sever.js中,我们可以通过connect-history-api-fallback 模块修改,修改方式如下:

// SPA应用浏览器回退支持配置

var rewrites = {
  rewrites: [{
    from: ‘/home/‘, // 正则或者字符串
    to: ‘/home/index.html‘, // 字符串或者函数
  }]
};
// handle fallback for HTML5 history API
app.use(require(‘connect-history-api-fallback‘)(rewrites));

官方使用文档见github:https://github.com/bripkens/connect-history-api-fallback

我的vue多页面系列的其他博客链接:

Vue-cli创建项目从单页面到多页面

Vue-cli创建项目从单页面到多页面3-关于将打包后的项目文件不放在根目录下

Vue-cli创建项目从单页面到多页面4 - 本地开发服务器设置代理

时间: 2024-11-10 15:42:26

Vue-cli创建项目从单页面到多页面2-history模式的相关文章

Vue-cli创建项目从单页面到多页面4 - 本地开发服务器设置代理

前后端分离开发时,有时候会遇到跨域的情况:只在开发的时候存在跨域,项目上线后,由于配置的域名相同,跨域就会不存在. 这个时候,有两种方案可以比较快的解决: 1.利用h5的特性,使用cors,在ngnix服务器上设置header:Access-Control-Allow-Origin的值为 *(或者目标域名)允许跨域. 2.在我们的本地开发服务器上设置代理. 这里主要介绍使用vue-cli创建项目后,怎样配置本地服务器的代理,成功通过本地服务器代理请求数据的解决方案. 解决方案 进入config/

使用vue cli开发项目中遇到的坑

一.部署文件 使用vue cli 开发项目,执行npm run build命令生成dist静态文件,将dist文件包放到服务器中即可. 刚接触webpack,不知道怎么部署前端文件,原以为需要将app文件上传,在 inux上安装node,以及npm install 一系列的包,捣鼓了很久,发现只需要执行 npm run build 将源码打包成一个静态文        文件即可,上传静态文件dist,将 controller指向index.html. 二.跨域问题 实行前后端分离,使用vue i

Vue 安装环境创建项目

vue 是一个单页面框架,基于模块化组件化的开发模式. 搭建开发环境之前必须要安装node.js,然后安装vue的脚手架工具(命令行工具)win + R 输入npm install  --global vue-cli(慢)或者cnpm install  --global vue-cli(快) 创建项目,vue init webpack  vuedemo01 (创建一个基于webpack为模版的命名为vuedemo01的项目) 1.你的名字是vuedemo01么 2.你的项目的描述是什么 3.作者

vue ui创建项目

一.打开终端,安装最新vue-cli npm install -g @vue/cli 二.终端运行vue ui vue ui 之后会自动跳转到http://localhost:8000,进入如下页面 三.三个标签,点击创建 1.填写项目名称.选择包管理器.是否初始化git 2.选择插件配置方式 3.选择手动配置项目将会进入这一步,可以选择插件进行安装配置,包括常用的router.vuex等 4.根据选择进入插件具体配置 四.点击创建项目,根据需要选择是否保存预设,以方便下一次直接创建  五.等待

VUE学习笔记之vue cli 构建项目

一.环境搭建: 1.安装node.js 从node.js官网下载并安装node,安装过程很简单,一路"下一步"就可以了.安装完成之后,打开命令行工具(win+r,然后输入cmd),输入 node -v,如下图,如果出现相应的版本号,则说明安装成功 因为在官网下载安装node.js后,就已经自带npm(包管理工具)了,要意的是npm的版本最好是3.x.x以上,以免对后续产生影响. 2.安装淘宝镜像 npm install -g cnpm --registry= https://regis

使用@vue/cli初始化项目

Vue CLI 的包名称由 vue-cli 改成了 @vue/cli. 如果你已经全局安装了旧版本的 vue-cli (1.x 或 2.x),你需要先通过 npm uninstall vue-cli -g 卸载它.附上vue-cli官方文档地址 首先检查你的node版本,Vue CLI 需要 Node.js 8.9 或更高版本 (推荐 8.11.0+),命令为 node --version 1.安装vue-cli,-g表示全局安装,这样你才可以直接在命令行使用该指令,否则不行 npm insta

使用 NPM 安装Vue并创建项目

一.下载node.js 官方下载地址:https://nodejs.org/en/download/ 选择相应版本安装 下载完成后一路next安装完成. 一般环境变量会自动添加,打开命令行测试是否安装成功 二.安装cnpm 使用下面命令安装淘宝镜像npm npm install -g cnpm --registry=https://registry.npm.taobao.org 等待安装完成后,使用npm -v命令测试是否安装成功. 三.安装Vue 全局安装Vue CLI 3.X版本 npm i

解决 Angular Cli 创建项目 慢的方法

由于使用 ng new app-name 这个命令,来创建项目很慢,是由于它需要下载很多的依赖包.所以可以通过如下命令 可以解决. 在命令后面加上参数 --skip-install    如:ng new app-name  --skip-install    --skip-instal 意思是跳过安装 依赖包的过程. 在项目创建完成后,使用 cnpm install 来安装依赖包. 原文地址:https://www.cnblogs.com/webNotes/p/10203940.html

vue cli搭建项目及文件引入

cli搭建方法:需安装nodejs先 1.npm install -g cnpm --registry=https://registry.npm.taobao.org //安装cnpm,用cnpm下载东西有时会快一些 2.cnpm i -g vue-cli  //安装 vue-cli,i:install 安装,-g:全局,哪儿都可以使用. 3.vue init webpack-simple ProjectName //webpack-simple:使用webpack-simple模板,proje