react start 后 url 后面不带/ 解决思路
> navigator@0.1.0 dev H:\2020home\giteez\navigator
> node scripts/start.js
Compiled successfully!
You can now view navigator in the browser.
  http://localhost:3009
Note that the development build is not optimized.
To create a production build, use yarn build.
node_modules/_react-dev-utils@10.2.1@react-dev-utils/WebpackDevServerUtils.js
function printInstructions(appName, urls, useYarn) {
  console.log();
  console.log(`You can now view ${chalk.bold(appName)} in the browser.`);
  console.log();
  if (urls.lanUrlForTerminal) {
    console.log(
      `  ${chalk.bold('Local:')}            ${urls.localUrlForTerminal}`
    );
    console.log(
      `  ${chalk.bold('On Your Network:')}  ${urls.lanUrlForTerminal}`
    );
  } else {
    console.log(`  ${urls.localUrlForTerminal}`);
  }
  console.log();
  console.log('Note that the development build is not optimized.');
  console.log(
    `To create a production build, use ` +
      `${chalk.cyan(`${useYarn ? 'yarn' : 'npm run'} build`)}.`
  );
  console.log();
}
查询
node_modules/_react-dev-utils@10.2.1@react-dev-utils/WebpackDevServerUtils.js
urls.localUrlForTerminal
printInstructions
createCompiler
\node_modules\_react-scripts@3.4.4@react-scripts\scripts\start.js
prepareUrls
react-dev-utils/WebpackDevServerUtils
const localUrlForTerminal = prettyPrintUrl(prettyHost);
const urls = prepareUrls(
      protocol,
      HOST,
      port,
      paths.publicUrlOrPath.slice(0, -1)
    );
最后重点就是 paths.publicUrlOrPath.slice(0, -1)
'/web/'.slice(0, -1)
'/web'
所以。我么需要后面多加一个字符就ok了
也就是在 config-overrides.js 里面 paths.publicUrlOrPath = subPath,这里用的是 react-app-rewired
后记-
改成'/web//'系统就加载不了文件,系统就崩了。再想其他方法。不eject的话
解决
最后解决了,思路就是 开发时候就是根目录,打包的时候,带上子目录
刚才进行了eject,然后那堆报错,还要把 react-app-rewired 打补丁的配置 从写一遍。最后换了一个解决思路
config-overrides.js
const { override, fixBabelImports, addLessLoader } = require('customize-cra')
// process.env.PUBLIC_URL = '/oss-front';
// 关闭 sourceMap
process.env.GENERATE_SOURCEMAP = 'true'
// process.env.GENERATE_SOURCEMAP = 'false';
// const path = require('path')
module.exports = override(
  fixBabelImports('import', {
    libraryName: 'antd',
    libraryDirectory: 'es',
    style: true,
  }),
  addLessLoader({
    javascriptEnabled: true,
    modifyVars: { '@primary-color': '#574ab7' },
  }),
  (config) => {
    if (process.env.NODE_ENV === 'production') {
      // 暴露webpack的配置 config ,evn
      const paths = require('react-scripts/config/paths')
      // 配置访问子目录/web/
      // paths.appBuild = path.join(path.dirname(paths.appBuild), 'oss')
      // config.output.path = paths.appBuild
      const subPath = '/oss-web/'
      paths.publicUrlOrPath = subPath
      config.output.publicPath = subPath
    }
    return config
  },
)
												
											react start 后 url 后面不带/ 解决思路的更多相关文章
- Jquery UI - DatePicker 在Dialog中无法自动隐藏的解决思路
		
通过Jquery UI Dialog模态展示如下的一个员工编辑页面,但是遇到一个奇怪的问题:点击Start Date的input元素后,其无法失去焦点.从而导致DatePicker控件在选择日期后无法 ...
 - C#  WebAPI中DateTime类型字段在使用微软自带的方法转json格式后默认含T的解决办法
		
原文:C# WebAPI中DateTime类型字段在使用微软自带的方法转json格式后默认含T的解决办法 本人新手,在.Net中写WebAPI的时候,当接口返回的json数据含有日期时间类型的字段时, ...
 - Tortoise-SVN 出现“unable to connect to a repository at url no element found”解决办法
		
安装要SVN server服务器后,建立自己的Repositories,创建自己的项目文件夹 如,https://xxxxxxxxxx.com:8443/ 安装Tortoise-svn进行设置目标链接 ...
 - IIS上发布站点后URL重写失效的解决方法
		
在发布网站时URL重写有可能会失效,如果失效的话就需要您设置一下IIS:1.Windows XP系统或Windows 2003系统等使用以下方法:>打开IIS,主目录-〉配置-〉映射-〉在窗体左 ...
 - react  build  后打包发布总结
		
一,部署在apache web服务器上(wamp | xammp) 1.后台接口需要做跨域设置 (1)在服务端利用Access-Control-Allow-Origin响应头解决. 设置A ...
 - C#不用union,而是有更好的方式实现    .net自定义错误页面实现    .net自定义错误页面实现升级篇  .net捕捉全局未处理异常的3种方式  一款很不错的FLASH时种插件  关于c#中委托使用小结  WEB网站常见受攻击方式及解决办法  判断URL是否存在  提升高并发量服务器性能解决思路
		
C#不用union,而是有更好的方式实现 用过C/C++的人都知道有个union,特别好用,似乎char数组到short,int,float等的转换无所不能,也确实是能,并且用起来十分方便.那C# ...
 - 尝试用React写几个通用组件 - 带搜索功能的下拉列表,开关切换按钮,弹出框
		
尝试用React写几个通用组件 - 带搜索功能的下拉列表,开关切换按钮,弹出框 近期正在逐步摸索学习React的用法,尝试着写几个通用型的组件,整体项目还是根据webpack+react+css-me ...
 - 十四、 React路由(react-router4.x): 动态路由、get传值、React中使用url模块
		
概述 新闻列表 -跳转-> 详情页 时,想把列表对应的id传到详情页里,可用到三种传值方法: 1.动态路由传值 2.get传值 3.localstorage传值 一.动态路由传值 [App.js ...
 - 【react】什么是fiber?fiber解决了什么问题?从源码角度深入了解fiber运行机制与diff执行
		
壹 ❀ 引 我在[react] 什么是虚拟dom?虚拟dom比操作原生dom要快吗?虚拟dom是如何转变成真实dom并渲染到页面的?一文中,介绍了虚拟dom的概念,以及react中虚拟dom的使用场景 ...
 - 网站启动SSL, http变为https后,session验证码错误解决方法
		
网站启动SSL, http变为https后,session验证码错误解决方法 最近公司需要后台启动安全证书,证书安装完毕后,后台老提示 验证码错误,经过几天的研究,此问题已经得到有效解决,现把方法 ...
 
随机推荐
- SpringCloud-02-Nacos注册中心
			
Nacos注册中心 1.认识Nacos Nacos是阿里巴巴的产品,现在是SpringCloud中的一个组件.相比Eureka功能更加丰富,在国内受欢迎程度较高. 2.安装Nacos 1 1.下载安装 ...
 - uni-app 介绍及使用
			
一.什么是uni-app uni-app由dcloud公司开发的多端融合框架,是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS.Android.Web(响应式).以 ...
 - P2216 [HAOI2007] 理想的正方形 题解
			
题目链接:理想的正方形 比较明显的,我们可以用二维 ST 表解决,具体的二维 ST 表的实现,只需要知道一点: 对于 \(st[i][j][t]=max(i \sim i+2^t,j \sim j+2 ...
 - DNS子域委派配置·
			
实验介绍:DNS子域委派的作用 子域即为主域下的一个子域名,当一个子域的流量过大时,主域的DNS服务器可以把一个子域的查询授权给一台专门的子域服务器 注意被委派的服务器必须是委派服务器的子域服务器. ...
 - react 聊聊setState异步背后的原理,react如何感知setState下的同步与异步?
			
壹 ❀ 引 在react中的setState是同步还是异步?react为什么要将其设计成异步?一文中,我们介绍了setState同步异步问题,解释了何种情况下同步与异步,异步带来了什么好处,以及rea ...
 - JS Leetcode 220. 存在重复元素 III 题解分析,暴力解法与桶排序
			
壹 ❀ 引 今天的题目来自LeetCode 220. 存在重复元素 III,难度中等,题目描述如下: 给你一个整数数组 nums 和两个整数 k 和 t .请你判断是否存在 两个不同下标 i 和 j, ...
 - NC20272 [SCOI2009]生日快乐
			
题目链接 题目 题目描述 windy的生日到了,为了庆祝生日,他的朋友们帮他买了一个边长分别为 X 和 Y 的矩形蛋糕.现在包括windy ,一共有 N 个人来分这块大蛋糕,要求每个人必须获得相同面积 ...
 - Centos中报错apt Command  not Found
			
先说结论: 在centos下用yum install xxxyum和apt-get的区别: 一般来说著名的linux系统基本上分两大类: RedHat系列:Redhat.Centos.Fedora等 ...
 - OpenWrt的多WAN和静态路由设置
			
配置第二个WAN 增加新VLAN Network->Switch 增加新的VLAN, 默认安装已经存在两个VLAN ID 1和2,新增的VLAND ID为3. 对应这行新记录,将CPU设为tag ...
 - 【Unity3D】地面网格特效
			
1 前言  本文实现了地面网格特效,包含以下两种模式: 实时模式:网格线宽度和间距随相机的高度实时变化: 分段模式:将相机高度分段,网格线宽度和间距在每段中对应一个值.  本文完整资源见→Unit ...