CODEPACK编译

codepack是一个类似于webpack的内置代码编译引擎

目的是为了编译出最终的前端js,css代码,可以通过配置自动丑化压缩

默认配置下:

丑化压缩 编译条件
调试模式 关闭 输入源内容有变化即重新编译
线上模式 开启 输出文件不存在即重新编译,输出文件只要存在就不重新编译

相关定义配置参见:index.php

define('__codepack_cachecorephp__',false);//缓存核心php缓存文件

define('__codepack_compress__',false);//压缩js,css代码

define('__codepack_salt__','2830');//随便写,不和以前重复就行,主要用来防浏览器缓存的

引擎代码参见:./__lovephp__/class/Codepack.class.php

比如首页源码视图

红框内就是codepack编译输出的,输出的文件统一放在./temp/codepack下面,同时文件名带有输入源文件的信息,可以方便找到输入源文件,上图就是由pc.core.jsrawpc.core.less编译生成,skelmodules开头的是由当前页面中用的的skel模块决定的,只会把页面用到的模块相关的js,css代码编译出来

less编译引擎用的php开源项目lessparser
js编译引擎用的是谷歌的closure-compiler,需要java环境,jar包文件位置:./__vendor__/java/jar/closure-compiler-v20211006.jar,支持es6语法