上篇文章介绍了如何搭建 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"
}

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

最新文章

  1. 神奇的css!竟然可以这样玩转表格
  2. 《Entity Framework 6 Recipes》中文翻译系列 (37) ------ 第六章 继承与建模高级应用之独立关联与外键关联
  3. 什么是java 序列化,如何实现java 序列化?
  4. 带你玩转JavaWeb开发之一 - HTML快速入门
  5. cocos2dx 3.x(动态改变精灵的背景图片)
  6. Ruby操作Excel的方法与技巧大全
  7. Cts框架解析(7)-任务运行的调度室
  8. ACdream 1728 SJY's First Task
  9. WCF学习——构建第二个WCF应用程序(四)
  10. 周强 201771010141 《面向对象程序设计(java)》第九周实验总结
  11. 45_redux_comment应用_redux版本_异步功能
  12. mysql-5.7.10-winx64 绿色版安装办法
  13. WordPaster2产品介绍
  14. Unity 图文重现官方教程视频 2droguelike 第一集
  15. UNIX历史
  16. Codeforces 670D1. Magic Powder - 1 暴力
  17. markdown语法---根据使用不断扩充中
  18. 数据库实例: STOREBOOK > 用户 > 编辑 用户: PUBLIC
  19. C++中冒号和双冒号的用法
  20. Selenium的PageFactory & PageObject 在大型项目中的应用

热门文章

  1. Response to 16岁的篮球投手
  2. (转)简单移动平均线(Simple Moving Average,SMA) 定义及使用
  3. Typescript使用字符串联合类型代替枚举类型
  4. RCA:收单设备调用云端接口频繁超时排查总结
  5. LeetCode刷题191120
  6. gdisk分区及swap分区
  7. Fiddler---Fiddler常用快捷键
  8. keepass可以在浏览器中使用吗?
  9. Day2 - Python基础2 列表、字符串、字典、集合、文件、字符编码
  10. JDBC简介(一)