react 地图发布 cesium 篇

上篇文章介绍了如何搭建 react cesium 开发环境。在开发环境下,项目一切运行正常。最近把项目打包发布出来,却遇见了 cesium 不能正确初始化。打开浏览器的调试面板,出现好多 404,资源路径错误。下面是项目的资源处理过程整理,其中 cesium 需要独立处理,大家以后要注意。

一、react 静态资源处理

修改 config/paths.js

function getServedPath(appPackageJson) {
  ...
  const servedUrl = envPublicUrl || (publicUrl ? url.parse(publicUrl).pathname : "./");
  ...
}

二、cesium 资源处理

这个是重点,如果不处理,项目构建后会无法正常运行,cesium 资源会报 404 错误。主要思路是,在加载 cesium 之前设置 cesium 资源的 baseUrl,调用 cesium 自带的 buildModuleUrl 函数来设置 baseUrl。

修改 /src/index.js,增加如下代码

...
import buildModuleUrl from "cesium/Core/buildModuleUrl";

buildModuleUrl.setBaseUrl("./");
...

三、关闭 cesium 的一些警告信息

修改 config/webpack.config.js

module.exports = function(webpackEnv) {
  return {
    module: {
      unknownContextCritical: false
    }
  };
};

四、关闭 sourceMap

修改 package.json

"scripts": {
    "build": "cross-env GENERATE_SOURCEMAP=false node scripts/build.js"
}

以上是发布环境的全部增量配置,如何您是新建项目,请先配置开发环境,再按照上面的步骤配置发布环境。



转载于:https://www.cnblogs.com/lifefriend/p/11400242.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值