| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- const inquirer = require('inquirer');
- const conf = require('../config.json');
- const fs = require('fs');
- const path = require('path');
- inquirer
- .prompt([
- {
- type: 'checkbox',
- message: '请选择需要打包的组件',
- name: 'packages',
- choices: conf.packages,
- validate: function(answer) {
- if (answer.length < 1) {
- return '请至少选择一项.';
- }
- return true;
- }
- }
- ])
- .then(answers => {
- const destPath = path.join(__dirname, '../custom.json');
- const choices = {
- 'version':conf.version,
- 'packages':[]
- };
- let str = 'let pkg = {};\n';
- answers.packages.map((name)=>{
- conf.packages.map((pkg)=>{
- if(pkg.name==name){
- choices.packages.push(pkg);
- const loName = name.toLowerCase();
- str += "pkg['" + loName + "'] = require('./package/" + loName + "/index.js').default;\n";
- }
- });
- });
- fs.writeFile(destPath, JSON.stringify(choices, null, 2), (err) => {
- if (err) throw err;
- console.log(`生成配置文件custom.json成功`);
- fs.readFile(path.join(__dirname, './customBuildTpl.js'), 'utf8', function (err, data) {
- fs.writeFile(path.join(__dirname, '../src/nutui-custom.js'), str + data, (err) => {
- if (err) throw err;
- console.log(`生成nutui-custom.js文件成功`);
-
- console.log([
- '',
- 'if there are some errors about "JavaScript heap out of memory",',
- 'you can have a read about "https://www.npmjs.com/package/increase-memory-limit"',
- ''
- ].join('\n'));
- });
- });
- });
-
- });
-
|