主要是如何打包,部署,用些什么方法或者技术呢?
现在我们用webpack,然后配置hash,准备写一个脚本,每次打包后把所有页面扫描一次,把引用js文件的地方替换为新的js文件
问一下大家在项目中使用react的时候一些工程化的问题
jiyinyiyong
#2
听楼主说的像是用了 WebPack 但是没有用 CommonsJS…?
我在 Teambition 用的方案还是 Requirejs, 打包有 requirejs 模块自己处理, hash 是自己写脚本生成的.
挺希望以后能切换 WebPack 的… 就是门槛高了点, 需要点时间
hufeng
#8
@jiyinyiyong 在使用的过程中有没有发现问题,我们使用的情况来看还是挺好用的,尤其和React的搭配比较无缝。唯一的一个问题就是在最终上线打包的时候出现了代码一样,但是生成的chunkhash不一致的问题(微博和题叶沟通过)。在github上面发了一个issue,作者标记为bug。但是还不知道什么时候可以解决(据说是因为sourceMap的绝对路径的问题)。暂时先忍了。
jiyinyiyong
#9
这么说没有用 SourceMap 可以逃过一劫是么…
话说我觉得 Webpack 打包的代码不像是 requirejs 打包时候那么简单, 结果是文件不能直接用 Workspace 映射了, 这种情况下 SourceMap 的帮助有限呢, 所以我现在都很少用 SourceMap 了.
jiyinyiyong
#12
我的写法是按照官方的先把 assets.json
生成出来, 然后用 gulp 编译 jade, 文件路径作为模版的参数传进去.
如果是服务端渲染模版, 这个办法也不错的.
官方有个例子可以看下:
hufeng
#13
我们的思路和@jiyinyiyong很类似,根据官方的指导提取打包文件信息webpack long cache
不过我们使用的jsp所以有点难处理,于是就用cheerio去找到要替换的script的src,在script上添加id(entry的key)。