UNPKG

ala-cli

Version:

aladdin develop utils

60 lines (46 loc) 1.24 kB
/** * * @file fis3编译:release php/js/smarty * @author chenrui09 * @date 2017/5/4 * */ const path = require('path'); let dirRoot = process.cwd(); let appConf = require(path.join(dirRoot, 'app.conf')); let releaseConf = appConf.release; let pluginsPath = '../plugins/'; let modules = appConf.modules; let rules = releaseConf.rules; let prepackager = releaseConf.prepackager; // 默认不执行编译 fis.match('**', { release: false }); // 动态规则匹配 for (let key in rules) { let rule = rules[key]; let fisMatch = path.normalize(modules[rule.module] + '/(' + rule.match + ')'); let fisParams = {}; fisParams.release = '$0'; fisParams.useHash = !!rule.useHash; if (rule.optimizer) { // to-do } fis.match(fisMatch, fisParams); } // 处理AMD模块 fis.hook('amd', {}); // 处理预打包 if (prepackager) { let handler; // 判断是否有路径匹配符 if (/\//.test(prepackager)) { handler = require(path.join(dirRoot, prepackager)); } else { handler = require(pluginsPath + prepackager); } fis.match('::package', { prepackager: handler }); }