Egret之config.ts

一 : 前言

關於項目中的config 其實與build / publish有關, 以下
Egret之config.ts
①, config.ts與web平臺有關
②, config.wxgame.ts與wxgame有關
現只講解config.ts 中的publish的文件壓縮方法web

二 : 文件壓縮(主要是egret類庫)

在command == 'publish'模塊中
Egret之config.tsjson

const outputDir = `bin-release/web/${version}`;
            return {
                outputDir,
                commands: [
                    new CustomPlugin(),
                    new CompilePlugin({ libraryType: "release", defines: { DEBUG: false, RELEASE: true } }),
                    new ExmlPlugin('commonjs'), // 非 EUI 項目關閉此設置contents
                    new UglifyPlugin([
                        {
                            // 須要被壓縮的文件
                            sources: [
                                "libs/modules/egret/egret.min.js",
                                "libs/modules/egret/egret.web.min.js",
                                "libs/modules/res/res.min.js",
                                "libs/modules/tween/tween.min.js",
                                "libs/modules/game/game.min.js",
                                "libs/modules/promise/promise.min.js",
                                "libs/modules/eui/eui.min.js",
                                "libs/modules/socket/socket.min.js",
                                "libs/modules/jszip/jszip.min.js"
                            ],
                            // 壓縮後的文件
                            target: "lib.main.min.js"
                        },
                        {
                            sources: ["main.js"],
                            target: "main.min.js"
                        }
                    ]),
                    new RenamePlugin({
                        verbose: true, hash: 'crc32', matchers: [
                            { from: "**/*.js", to: "[path][name]_[hash].[ext]" }//hash
                        ]
                    }),
                    // new ResPlugin(),
                    new ManifestPlugin({ output: "manifest.json" })
                ]
            }

壓縮JS文件須要使用UplifyPlugin插件 , 如上代碼(以下圖)
Egret之config.tspromise

三 : 好處

①減小請求次數
②隱藏類庫代碼socket

相關文章
相關標籤/搜索