WEB同构应用指的是经过代码的编译转换手段(一般借助于babel)来让代码在不一样端client(浏览器), server(服务器)运行.同构的web应用主要有如下的优势:javascript
在进行代码转换的时候,首先要明白代码转换的目的才能明确对不一样文件的转换策略.好比为了实现同构将client端的代码转换成server端能够运行的代码,对不一样类型CSS文件的不一样处理策略.一般借助于webpack来实现代码的转换功能.webpack会根据入口文件依次的解析引用的各类文件类型,经过配置的webpack loader能够实现对应文件类型的转换.如下主要从不一样类型文件处理的角度进行介绍:css
转换的目标是client端的代码(排除node_modules). 将client转换成server端能够运行的代码 java
对于CSS能够有如下两种的处理方法:node
可使用DllPlugin对使用的基础组件库进行统一的提取和引用.提取公有模块代码主要有如下的好处:react
可使用happyPack加快编译速度,happyPack经过多进程的方式来加快代码的打包过程. 使用happyPack的例子: webpack
能够经过webpack-manifest-plugin生成资源的位置信息文件,而后经过该文件查找资源的位置. 资源位置文件 nginx
经过manifest查找资源的位置
es6
在是否在项目中使用同构应用的时候,仍是要结合具体的场景.能够有如下的几点考虑:web
欢迎你们关注公众号,一块儿进步api